Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ как сделать так чтобы сохранение в текстовом файле при работе в цикле дописывало текс, а не перезаписывало его?

Автор: eldar85 9.4.2010, 22:16

такая проблема, программа работает и записывает строку в текстовой файл.
при перезапуске программы происходит и перезапись содержимого файла, а мне нужно чтобы она дописывала новую строку с новой строки...
к примеру запустил прогу - вышла запись в файл "сделано за 6 секунд"
запустил второй раз - пошла запись на второй строке "сделано за 4 секунды"
ну и так далее...
вот так прога просто перезаписывает файл, а не дополняет его

QFile file("c:/time.txt");
     if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
         return;

     QTextStream out(&file);
     out << time << "\n";


в принципе убрал вот этот кусок из цикла
QFile file("c:/time.txt");
     if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
         return;

и она записывает в новую строку новое время, но при перезапуске проги все что было зааписано в цикле удаляется...

Автор: BRE 9.4.2010, 22:18

Посмотри на режим открытия файла:
QIODevice::Append

[offtop]Где то я сегодня отвечал на этот вопрос. :)[/offtop]

Автор: alex977 9.4.2010, 22:22

Раз нужно дописывать информацию, то логично открывать файл в таком режиме:

Цитата
QIODevice::Append
0x0004
The device is opened in append mode, so that all data is written to the end of the file.



P.S. Ну вот, уже ответили.

Автор: eldar85 9.4.2010, 22:27

спасибо, сейчас попробую))

тоесть

QIODevice::Append

вместо
QIODevice::WriteOnly
??????

Большое спасибо!!! все отлично работает)))

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)