Как читать файл в C++ построчно?

210
28 января 2019, 12:20

Нужно, чтобы программа читала только определенные строки в файле, например, 1 строку или 7, но не весь файл целиком

Answer 1

Только если строки фиксированной длины, тогда читаете как обычный файл случайного доступа. Если строки переменной длины (то есть позиции строк неизвестны), единственный способ это читать все, откидывая ненужное.

Answer 2

Так сделать невозможно, файл всё равно будет читаться последовательно. Можно читать построчно, и останавливаться для анализа только на строках нужного номера, например так:

#include <fstream>
#include <string>
int main()
{
    std::ifstream fin("my_file.txt")
    std::string line;
    int num = 0;
    while (std::getline(fin, line))
    {
        ++num;
        if (num == 1 || num == 7)
        {
            doSomething(line);
        }
    }
    return 0;
}
READ ALSO
Как отправить int Array в Dragino с помащю Lora Shild?

Как отправить int Array в Dragino с помащю Lora Shild?

У меня есть етот массив!!

199
Повреждение файлов при отключении питания и исключениях в процессах

Повреждение файлов при отключении питания и исключениях в процессах

Я занимаюсь разработкой автономных систем управления и анализа для тяжелой промышленностиИспользую язык C (C99-C11)

197
Вызов и подключение программы на c++ из c#

Вызов и подключение программы на c++ из c#

Есть программа на c++, которая генерирует зашифрованное сообщение и выводит в файл и консольПрограмма на c# должна эти данные выводить на winforms

170
С++ библиотека для метаданных видео

С++ библиотека для метаданных видео

Всем доброго времени суток)

157