0
У меня есть .dat файл с 10 строками, каждая строка имеет слово. Как бы я случайно выбрал строку, чтобы я мог вывести слово из строки в мою функцию?Выбрать случайную строку из .dat файла с помощью C++
У меня есть .dat файл с 10 строками, каждая строка имеет слово. Как бы я случайно выбрал строку, чтобы я мог вывести слово из строки в мою функцию?Выбрать случайную строку из .dat файла с помощью C++
Здесь ya go. Вы можете изменить имя файла на любой и изменить количество строк, если вам нужно. Основываясь на информации, которую вы дали, я сделал это.
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <ctime>
int main()
{
const char* myFileName = "data.txt";
const int numberOfLines = 10;
std::ifstream myData;
std::string lines[numberOfLines];
int index = 0;
myData.open(myFileName, std::ifstream::in);
while (myData.good() && index < numberOfLines) {
myData >> lines[index];
index++;
}
myData.close();
srand(time(NULL)); // Seed random number generator
int randomIndex = rand() % index; // Incase there were less than numberOfLines
std::cout << lines[randomIndex] << std::endl;
return 0;
}