Russian Qt Forum

Qt => Общие вопросы => Тема начата: merke от Ноябрь 17, 2010, 12:34



Название: Проблемы в QFile
Отправлено: merke от Ноябрь 17, 2010, 12:34
Всем привет!

Существует файл, он в одной процедуре изначально забивается нулями, ну как бы размечается.

Потом в другой процедуре этот файл опять же открывается и начиная с 1 байта по 8 записывается одна информация с 9 по 17 другая информация и т.д.

Столкнулся со следующей проблемой открываю файл так:
Код:
file.open(QIODevice::WriteOnly|QIODevice::Append);

И далее делаю так:

Код:
QDataStream stream(&file);
stream.device()->seek(0);
stream.writeRawData((char*)priznak_nakopitelya,8);

И получается что инфа записывается в конец файла, а не заменяются первые 8 байт в файле. (так как файл уже забит нулями "размечен", необходимо записывать инфу затирая нули.)

А если открывать файл следующим способом:
Код:
file.open(QIODevice::WriteOnly);

то всё нормально, но пропадает разметка, т.е файл очищается нету тех самых нулей. и новая инфа пишется в пустой файл.

Можно ли такое реализовать?

Буду благодарен помощи



Название: Re: Проблемы в QFile
Отправлено: Пантер от Ноябрь 17, 2010, 12:39
QIODevice::ReadWrite попробуй.


Название: Re: Проблемы в QFile
Отправлено: merke от Ноябрь 17, 2010, 12:50
спасибо помогло!