[gelöst] XML + QT + Dom --> Elementname setzen ???

Alles rund um die Programmierung mit Qt
Antworten
flownfluid
Beiträge: 80
Registriert: 6. Januar 2005 12:54

[gelöst] XML + QT + Dom --> Elementname setzen ???

Beitrag von flownfluid »

Hallo zusammen,

irgendwie finde ich nichts zu dem Thema

mein XML:
<MyXml>
<Test>
<A1>adsddasd</A1>
<A2 t1=5 t2=19/A2>
</Test>
</MyXml>

Ich kann das Xml lesen und nun möchte ich ein solches vom QDomDocument generieren lassen.
Alles funktioniert prima nur weiss ich nicht wie ich das A1 generiern muss.

Code: Alles auswählen

QDomDocument o_doc("MyXml");
QDomElement o_elem = o_doc.createElement("Befehl");

  QDomElement o_tag = o_doc.createElement("A1");

//--> o_tag.setText("adsddasd") <--
//irgend so etwas müsste es doch geben oder nicht?
//finde einfach nichts was passt...

o_tag = o_doc.createElement("A2");
o_tag.setAttribute("t1",5);
o_tag.setAttribute("t2",19);
o_elem.appendChild(o_tag);

ich hoffe ihr könnt mir da bei dem kleinem Problem gerade helfen. Steh da momentan voll auf dem Schlauch...

Vielen Dank schon mal...
Zuletzt geändert von flownfluid am 24. Februar 2009 12:53, insgesamt 1-mal geändert.
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Nimm doch anstatt QDomDocument::createElement() einfach QDomDocument::createTextNode().
Pass aber auf, QDomText ist ein eigenes DomNode, welches als child von A1 gesetzt werden muss.
flownfluid
Beiträge: 80
Registriert: 6. Januar 2005 12:54

Beitrag von flownfluid »

vielen Dank hat ausgezeichnet funktioniert...

Code: Alles auswählen

    QDomElement o_tag = o_doc.createElement("A1");
    QDomText    o_text  = o_doc.createTextNode("A1_Inhalt");
    o_text.setData("adsddasd");
    o_tag.appendChild(o_text);
    o_elem.appendChild(o_tag);
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

flownfluid hat geschrieben:vielen Dank hat ausgezeichnet funktioniert...

Code: Alles auswählen

    QDomElement o_tag = o_doc.createElement("A1");
    QDomText    o_text  = o_doc.createTextNode("A1_Inhalt");
    o_text.setData("adsddasd");
    o_tag.appendChild(o_text);
    o_elem.appendChild(o_tag);
Wobei eigentlich reichen sollte

Code: Alles auswählen

QDomText    o_text  = o_doc.createTextNode("adsddasd");
.
Das setData kannste dir schenken.
flownfluid
Beiträge: 80
Registriert: 6. Januar 2005 12:54

Beitrag von flownfluid »

logisch, hmm steh heute echt aufm schlauch :x

gruss und danke
Antworten