Ich habe folgendes XML-File:
Code: Alles auswählen
<?xml version="1.0" encoding="..."?>
<buddylist>
<buddy>
...
</buddy>
<buddy>
...
</budy>
</buddylist>
Im Moment wird im xml-File am Ende das ganze Dokument mit den Modifikationen angefügt, jedoch wird das alte belassen! Das ergibt dann etwas in der Art von:QDomDocument doc;
if(!doc.setContent(&file, false, &errorStr, &errorLine, &errorColumn)) {
std::cerr << "Error: Parse error at line " << errorLine << ", "
<< "column " << errorColumn << ": "
<< qPrintable(errorStr) << std::endl;
return false;
}
QDomElement root = doc.documentElement();
QDomElement mainelem = doc.createElement("buddy");
QDomElement idelem = doc.createElement("Test");
QDomElement nameelem = doc.createElement("name");
mainelem.appendChild(idelem);
mainelem.appendChild(nameelem);
root.appendChild(mainelem);
QTextStream out(&file);
doc.save(out, 0);
Code: Alles auswählen
<?xml ...?>
<buddylist>
...
</buddylist>
<?xml ...?>
<buddylist>
... mit modifizierten Elementen
</buddylist>
gruss und danke
theheader