我试图修改.txt文件的QT。我在,每当我写新的数据就删除以前的数据test.txt文件中写入数据。我所寻找的是如下:
无论是检查该文件存在与否。 如果是通过时间戳文件中插入新的数据更新文件 如果没有不是创建新的文件并插入数据。
void writefile(QString Filename)
{
QFile mFile(Filename);
if(!mFile.open(QFile::WriteOnly | QFile::Text))
{
qDebug() << "Not open file";
return;
}
// we can use stream instead of OUT FOR OUTPUT
QTextStream out(&mFile);
out << PCAN_DEVICE_NUMBER << ", " << PCAN_HARDWARE_NAME ;
// mFile.flush();
mFile.close();
你必须改变的文件打开命令属性(QFile::Append|QFile::Text)
,因为QFile::WriteOnly
意味着QFile::Truncate
。
mFile.open(QFile::Append | QFile::Text)
你可以看看成QIODevice
的文档:http://doc.qt.io/qt-5/qiodevice.html#OpenModeFlag-enum
使用附加标志打开文件
!mFile.open(QFile::WriteOnly | QFile::Text | QIODevice::Append)