std :: getline альтернатива, когда концы строк ввода смешаны

Я пытаюсь прочитать строки из std :: istream , но вход может содержать ] '\ r' и / или '\ n' , поэтому std :: getline бесполезен.

Извините за крик, но это, кажется, требует особого внимания. ..

Входные данные могут содержать либо тип новой строки , либо оба .

Есть стандартный способ сделать это? На данный момент я пытаюсь

char c;
while (in >> c && '\n' != c && '\r' != c)
    out .push_back (c);

... но здесь пропускаются пробелы. Ооо! std :: noskipws - требуется еще возня, и теперь это бесполезно.

Разве должен быть лучший способ?!?

7
задан spraff 14 July 2011 в 14:41
поделиться