Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > fstream - сдвиг


Автор: Rickert 14.8.2008, 06:38
Код
fstream file;
unsigned char length;
file.open(path, ios_base::in | ios_base::binary);
  
if (!file.is_open())
  return 0;

file.read((char*)&length, sizeof(length));
file.seekg(sizeof(length) + 1);

Последняя строка - это я сдвиг делаю. Надо всегда указывать всё что читал до этого, чтобы знать текущее положение. А может его как-то получить можно? smile 

Автор: ama_kid 14.8.2008, 08:11
Цитата(Rickert @  14.8.2008,  06:38 Найти цитируемый пост)
file.seekg(sizeof(length) + 1);
Если тебе надо перейти просто на следующий символ - то может лучше:
Код
file.seekg( 1, ios_base::cur );

Автор: Rickert 14.8.2008, 08:30
ama_kid, то что надо, спасибо!

Автор: W4FhLF 14.8.2008, 09:04
Вообще это поток smile 

Код

file >> length;

Автор: bsa 14.8.2008, 12:43
Цитата(W4FhLF @ 14.8.2008,  09:04)
Вообще это поток smile 

Код

file >> length;

не сработает. у него бинарный файл, а оператор >> - для текстовых.

Автор: W4FhLF 14.8.2008, 13:32
bsa, точно, не заметил.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)