ifstream In("C:\\1.txt", ios::in | ios::binary);
while (!In.eof())
{
In.getline(..., '$');
....
// Последняя часть строки
In.getline(..., sizeof(...), '\n');
Символ конца строки \r\n
Вот какую мелочь хотелось бы решить, есть код:
Код:
здесь я читаю текстовый файл по строчно, по ходу разбирая строки на части, в последней части указываю разделитель конца строки, а в бинарном режиме доступа к файлу он не '\n', а '\r\n' отсюда все вытекающие с лишним символом '\r'.
Если открывать в текстовом режиме тогда все нормально, но тогда теряется скорость чтения файла, что крайне не желательно. Как-нибудь можно ему подсунуть '\r\n'?
Цитата:
Originally posted by enola
Как-нибудь можно ему подсунуть '\r\n'?
Как-нибудь можно ему подсунуть '\r\n'?
Кому?
Цитата:
Originally posted by Plisteron
Кому?
Кому?
getline'ну, т.е. как вот такое сообразить:
Код:
In.getline(..., sizeof(...), "\r\n");
но getline требует одного символа.
Цитата:
Originally posted by enola
getline'ну, т.е. как вот такое сообразить:
но getline требует одного символа.
getline'ну, т.е. как вот такое сообразить:
Код:
In.getline(..., sizeof(...), "\r\n");
но getline требует одного символа.
Делаешь In.getline(..., sizeof(...), 'n');, потом ...[sizeof(...) - 1] = '\0';
Если, конечно, я правильно понял вопрос.
Цитата:
Originally posted by Plisteron
Делаешь In.getline(..., sizeof(...), 'n');, потом ...[sizeof(...) - 1] = '\0';
Если, конечно, я правильно понял вопрос.
Делаешь In.getline(..., sizeof(...), 'n');, потом ...[sizeof(...) - 1] = '\0';
Если, конечно, я правильно понял вопрос.
спасибо конечно, но до такого я и сам смог додуматься:
Код:
[strlen(...) - 1] = '\x0';
я думал может можно как-нибудь прям в getline запихать. :)