Russian Qt Forum

Qt => XML => Тема начата: Evgeniy N. Sharapov от Апрель 17, 2005, 06:15



Название: Конструирование XML
Отправлено: Evgeniy N. Sharapov от Апрель 17, 2005, 06:15
Конструирую себе XML начинаю с пустого QDomElement
node = new QDomElement();
Тут то и происходит segmentation fault.
В чем тут косяк может быть?
(Тип node is  QDomElement()* )


Название: Конструирование XML
Отправлено: Admin от Апрель 17, 2005, 08:18
в примерах советуют так

Код:
const int Indent = 4;

QDomDocument doc;
QDomElement root = doc.createElement("doc");
QDomElement quote = doc.createElement("quote");
QDomElement translation = doc.createElement("translation");
QDomText quoteText = doc.createTextNode("Errare humanum est");
QDomText translationText = doc.createTextNode("To err is human");

doc.appendChild(root);
root.appendChild(quote);
root.appendChild(translation);
quote.appendChild(quoteText);
translation.appendChild(translationText);

QTextStream out(&file);
doc.save(out, Indent);


будет генерится

Код:
[color=brown]<doc>
    <quote>Errare humanum est</quote>
    <translation>To err is human</translation>
</doc>[/color]


Название: Конструирование XML
Отправлено: Admin от Апрель 17, 2005, 08:20
попробовал у себя

QDomElement* p = new QDomElement();

усе пашет и не падает


Название: Конструирование XML
Отправлено: Evgeniy N. Sharapov от Апрель 18, 2005, 00:57
Цитата: "Admin"
в примерах советуют так

Код:
const int Indent = 4;

QDomDocument doc;
QDomElement root = doc.createElement("doc");
QDomElement quote = doc.createElement("quote");
QDomElement translation = doc.createElement("translation");
QDomText quoteText = doc.createTextNode("Errare humanum est");
QDomText translationText = doc.createTextNode("To err is human");

doc.appendChild(root);
root.appendChild(quote);
root.appendChild(translation);
quote.appendChild(quoteText);
translation.appendChild(translationText);

QTextStream out(&file);
doc.save(out, Indent);


будет генерится

Код:
[color=brown]<doc>
    <quote>Errare humanum est</quote>
    <translation>To err is human</translation>
</doc>[/color]


так я просмотрел кучу примеров... может у меня не очень хорошо с C++ дизайном, но в Java и Python  варианте все работало... суть в том, что у меня есть "елка" объектов... и я хочу получить XML представление объекта со всеми его подобъектами... поэтому приведенный вариант не очень меня устраивает... :( Я генерю QDomElement который собственно и представляет объект... со всеми его подобъектами...