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


Автор: WinDWS 6.5.2009, 22:48
Что то никак не могу понять, читаю запись из файла, а мне выводят вообще не те числа которые я записывал в файл! может я неправильно позиционирую?!
Вот функция чтения из файла:
Код

fstream& readZap(fstream& file,STRUCT_RECORD& rec, int pos)
{
    file.clear();
    int SIZE = sizeof(rec);
    
    if(pos)
        file.seekg((pos-1)*SIZE, ios::beg);
    file.read((char*) &rec,SIZE);
    if(!file &&file.eof())
    {
        cout<<"\n ERROR READ!!!";
        getch();
        exit(0);
    }
    return file;
}

Заранее спасибо!

Автор: math64 7.5.2009, 07:50
Как открытал файл? Добавил ios::binary?

Автор: Rickert 7.5.2009, 09:26
WinDWS,  smile  smile  smile 

Автор: WinDWS 7.5.2009, 14:33
Да, добавил! она записывает нормально, но функция чтения выводит не то что я хотел бы!

Автор: math64 7.5.2009, 15:38
Записать тестовый файл 3-2 записи с различными данными
Перед read() прочистить rec.
Распечатать tellg();
Распечатать rec и попытаться найти его в файле

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