Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Инициализация QFile и QTextStream


Автор: Lindemann66 29.8.2011, 11:07
Всем привет! smile

Меня интересует такой вопрос
Знаю что глупый, не ругайтесь сильно smile

Нужно приинициализировать объект класса QFile
Во всех источниках это делается так:
Цитата

QFile file("file.txt");


Хорошо, но если нам нужно затем реинициализировать этот файл?
Как это записать?

file = QFile("file.txt") не работает
file("file.txt") - естественно, тоже
file.setFileName - не предлагать

То же касается и QTextStream

И что, неужели никак?

Автор: bsa 29.8.2011, 11:14
Цитата(Lindemann66 @  29.8.2011,  11:07 Найти цитируемый пост)
file.setFileName - не предлагать
Почему?
Код
file.close();
file.setFileName(...);
file.open();


Автор: Lindemann66 29.8.2011, 15:01
Код

QFile file; // вначале можно не указывать файл
file.setFileName("file1.txt"); // указываем файл
file.open(QIODevice::WriteOnly); // открываем его для записи
QTextStream stream; // создаём stream... тоже можно сразу не указывать, а указать потом
stream.setDevice(&file); // указываем, что работать будем с нашим файлом
stream << "My Text"; // записываем
file.close(); // закрываем файл
file.setFileName("file2.txt"); // указываем другое имя файла
file.open(QIODevice::WriteOnly); // опять открываем для записи, но уже другой файл
stream << "Text2"; // опять записываем
file.close(); // и закрываем его


Тема закрыта smile

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