Russian Qt Forum

Qt => Общие вопросы => Тема начата: wolfut от Август 30, 2011, 10:38



Название: Как очистить QDataStream [Решено]
Отправлено: wolfut от Август 30, 2011, 10:38
Доброго времени суток!

Есть конструкция

QFile fileRecord;
QDataStream MainSream(&fileRecord);


как можно очистить MainSream?


Название: Re: Как очистить QDataStream
Отправлено: Пантер от Август 30, 2011, 10:52
Как вариант:
Код
C++ (Qt)
MainSream.setDevice (0);
MainSream.setDevice (&fileRecord);
 


Название: Re: Как очистить QDataStream
Отправлено: wolfut от Август 30, 2011, 10:59
немного не так, очистка не происходит до сохранения в файл

есть

QByteArray WaveStreamByteArray;
QDateStream WaveSream(WaveStreamByteArray);

.....
qDebug()<<WaveSream.device()->size();
WaveSream.device()->reset();
WaveStreamByteArray.clear();
qDebug()<<WaveSream.device()->size();


очистка не проходит.
Как это поправить?


Название: Re: Как очистить QDataStream
Отправлено: wolfut от Август 30, 2011, 12:23
думаю QDateStream можно присвоить новый QByteArray, только как это сделать кроме как в конструкторе?


Название: Re: Как очистить QDataStream
Отправлено: LisandreL от Август 30, 2011, 19:39
Что вы подразумеваете под очисткой? Стирание уже записанных туда данных?


Название: Re: Как очистить QDataStream [Решено]
Отправлено: wolfut от Сентябрь 05, 2011, 09:34
Да стирание данных, чтоб размерность стала 0.

я уже разобрался в чем дело, не правильно объявил:

QByteArray WaveStreamByteArray;
QDateStream WaveSream(WaveStreamByteArray);

а надо было:

QByteArray WaveStreamByteArray;
QDateStream WaveSream(&WaveStreamByteArray);