C/C++

Как прочитать определенную строку

Как прочитать определенную строку C++,а не весь файл
Если не знаешь смещение начала этой строки от начала файла, то никак.
Придётся построчно читать файл, пока не достигнем искомой строки. Но читать ту часть файла, которая находится после искомой строки, не имеет смысла.
Rob Manukyan
Rob Manukyan
92 628
Лучший ответ
Никак. Текстовый файл разбит на символы а не на строки. Поиск строки сводится к поиску символа перевода на новую строку '\n'. Так что хочешь-не-хочешь придется читать весь файл посимвольно до нужной строки.
В C++ можно прочитать определенную строку из файла, используя классы `ifstream` (ввод из файла) и `string` для работы со строками. Вот пример кода:

```cpp
#include <iostream>
#include <fstream>
#include <string>

int main() {
std::ifstream inputFile("example.txt"); // Открываем файл для чтения
if (!inputFile) {
std::cerr << "Ошибка открытия файла." << std::endl;
return 1;
}

std::string line;
int lineNumber = 3; // Номер строки, которую нужно прочитать
int currentLine = 1;

while (std::getline(inputFile, line)) {
if (currentLine == lineNumber) {
std::cout << "Прочитанная строка: " << line << std::endl;
break;
}
currentLine++;
}

inputFile.close(); // Закрываем файл

return 0;
}
```

В этом примере мы открываем файл с именем "example.txt" для чтения. Затем мы читаем строки из файла по одной с помощью `std::getline`. Мы проверяем каждую прочитанную строку и, если текущая строка совпадает с номером строки, которую мы ищем, мы выводим ее на экран и прерываем цикл.

Не забудьте заменить "example.txt" на имя файла, который вы хотите прочитать, и установите правильный номер строки `lineNumber`, которую вы хотите извлечь.
Ванька Рагулин
Ванька Рагулин
14 368
Молча, глазами