在Qt中删除xml文件的内容

时间:2015-12-17 07:06:22

标签: qt xml-parsing

我有一个编写xml的程序,我使用了一个逻辑,它创建了一个空白的xml if(file.open(QIODevice::ReadWrite)) { QTextStream stream(&file); stream<<""<<endl; } XMLWriter();

然后我打电话给XMlwriter。但问题是,当我想进行更改并保存第二次时,它不会被覆盖。它只是添加到现有文件,因此创建重复。有没有我可以在stream<<""<<endl;

之前删除enitre xml内容的地方

1 个答案:

答案 0 :(得分:1)

要截断文件,请将QIODevice::Truncate标记传递到QFile::open()来电:

if (file.open(QIODevice::ReadWrite | QIODevice::Truncate)) {
    // ....
}

或者,如果您只是写入文件(而不是从中读取),则可以使用QIODevice::WriteOnly标记which implies QIODevice::Truncate

if (file.open(QIODevice::WriteOnly)) {
    // ....
}