qt 文件流写入追加不覆盖
时间: 2023-06-13 10:07:24 浏览: 481
Qt 中可以使用 QTextStream 类来进行文本文件的读写操作,其中追加写入不覆盖原有内容可以通过设置打开模式来实现。具体步骤如下:
1. 定义 QFile 类型的对象,指定要写入的文件路径。
2. 打开文件,使用 QFile::open() 函数打开文件,并设置打开模式。在这里,我们需要设置打开模式为 Append,表示追加写入。
3. 定义 QTextStream 类型的对象,指定输出文件。
4. 使用 QTextStream::operator<<() 函数将要写入的内容写入文件。
5. 关闭文件,使用 QFile::close() 函数关闭文件。
下面是一个示例代码:
```c++
#include <QFile>
#include <QTextStream>
int main(int argc, char *argv[])
{
QFile file("test.txt");
if (!file.open(QIODevice::Append | QIODevice::Text))
return -1;
QTextStream out(&file);
out << "Hello, World!\n";
out << "This is a test.\n";
file.close();
return 0;
}
```
在这个示例代码中,我们打开了一个名为 test.txt 的文本文件,并设置打开模式为 Append | Text,表示追加写入和文本模式。然后,我们使用 QTextStream 类型的对象 out 来输出数据到文件中。在每次写入操作之后,我们需要调用 QFile::close() 函数来关闭文件。
阅读全文