在QT编辑文件

问题描述 投票:0回答:2

我试图修改.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();
qt file text-files
2个回答
2
投票

你必须改变的文件打开命令属性(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


0
投票

使用附加标志打开文件

!mFile.open(QFile::WriteOnly | QFile::Text | QIODevice::Append)
© www.soinside.com 2019 - 2024. All rights reserved.