C++ читает строки потока, содержащие нулевой символ

У меня есть следующая проблема - есть файл с информацией (я не знаю размер файла), как это:

\0\0\0\0\0\0123456789\0\0\0\0\0\0Name
\0\0\0\0\0\0111111111\0\0\0\0\0\0Name1
\0\0\0\0\0\0222222222\0\0\0\0\0\0Name2

и моя цель состоит в том, чтобы прочитать цифры в середине и имя в конце строк. Я пытаюсь читать построчно, используя строку так:

std::ifstream fileStream(file, std::ios::binary);

if (fileStream.is_open()) 
{
    string line;
    while (getline(fileStream, line)) 
    {
        cout << line;
    }
}

но мой вывод: ничего

>
>
>

Я предполагаю, что это потому, что там есть нулевые символы, и строка завершается, когда встречается первый нулевой символ, поэтому нет выходных данных. Я просто не знаю, как прочитать все это, а затем обрезать нулевые символы.

Любая помощь будет оценена.

0 ответов

Другие вопросы по тегам