Qt成功创建了一个文件但没有用QTextStream写入它

时间:2013-11-19 01:38:54

标签: qt qtextstream

嘿我正试图搞乱Qt,由于某种原因,下面的代码将创建所需的文本文件,但从不写任何东西。难道我做错了什么?我相信我已经非常准确地复制了文档中的示例。

qDebug() << output

按预期工作,但即使创建了文件,也没有任何内容写入。

#include <QCoreApplication>
#include <QtDebug>
#include <QString>
#include <QDateTime>
#include <QTextStream>

int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);

QString filename = "";
filename.append(QString::number(QDateTime::currentMSecsSinceEpoch()));
filename.append(".txt");

QFile file(filename);
file.open(QIODevice::WriteOnly);
QTextStream out(&file);

QString output = "TEST";

qDebug() << output;
out << output;
return a.exec();
}

1 个答案:

答案 0 :(得分:3)

数据不会立即写入磁盘:它位于缓冲区中,直到刷新为止。

写完后关闭文件。

(根据我的经验,当您退出程序时,文件仍会关闭,但最好明确地执行此操作)