С++ Файловый ввод-вывод с использованием потоков
Написал код для записи-чтения из файла. Появилась проблема с чтением данных (читает до случайного места и выходит) , подумав решил что в файле встречается конец файла или что-то вроде того. Для решения нужно в настройках считывания добавить бинарный стиль чтения (ios::binar). Добавил.. . к моему удивлению не помогло. Переписал код в обычный ввод-вывод (fopen вместо ifstream) проблема осталась но когда добавил "rb" (бинарный стиль) всё заработало.
Вопрос почему в случае с потоками не помогло

код потокового чтения
BOOL read(LPCSTR filename)
BLOCK load;
ifstream file;

file.open( filename,ios::in || ios::binary)

if(!file)
return false;

while (!file.eof())
{
file.read((char*)&load,sizeof(BLOCK));

Map.push_back(load);
}

  • Файл еще выложи на какой-нибудь обменник, хотя бы яндекс. диск. А то заочно сложно проверять.
  • попробуй вставить в конце кода - команду - cin.get(); - экран после этого не должен закрываться в конце своей деятельности кода до нажатия клавиши enter.

Вас заинтересует