这是没有将任何文本元素写入 xml 文件的代码:
QString filename = QFileDialog::getSaveFileName(this, "Vytvorenie databázy", QDir::currentPath(), "XML file(*.xml)");
QFile file(filename);
file.open(QIODevice::WriteOnly);
QXmlStreamWriter xmlWriter(&file);
xmlWriter.setAutoFormatting(true);
xmlWriter.setAutoFormattingIndent(4);
xmlWriter.writeStartDocument();
xmlWriter.writeStartElement("CARS");
//
//
xmlWriter.writeEndElement();
xmlWriter.writeEndDocument();
file.close();
这是输出:
<?xml version="1.0" encoding="UTF-8"?>
<CARS/>
这是想要的输出:
<?xml version="1.0" encoding="UTF-8"?>
<CARS>
</CARS>
为什么不写任何附加元素时不写根元素的开始?即使没有添加更多元素,有没有办法明确告诉作者写它?同样的事情发生在 C# 中。