Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: toString - выводит не весь документ....
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Обработка XML
ltise
Подскажите плиз:

Использую:
QDomDocument doc
...
..
..

qDebug() << doc.toString();

----- выводит не весь документ..
почему такое может быть ?
как вывести весь документ ?

Спасибо
Алексей1153
А в чём выражается?

То есть, покажи, что (и как) вводил, и что вывелось :)
ltise
Цитата(Алексей1153 @ 6.7.2010, 15:39) *
А в чём выражается?

То есть, покажи, что (и как) вводил, и что вывелось :)

вывожу тупо в консоль:

qDebug() << doc->toString();

получаю:

"<!DOCTYPE TYPE>
<elements>
<CHANGED id="77"/>
</elements>
<objects>
<id75 type="Type1" id="75">
<pos id="76"/>
</id75>
<id76 a="386" b="112" type="Type3" id="76"/>
<id5 type="Type2" id="5">
<items count="23">
<i0 id="3"/>
<i1 id="7"/>
<i2 id="10"/>
<i3 id="13"/>
<i4 id="16"/>
<i5 id="19"/>
<i6 id="22"/>
<i7 id="25"/>
<i8 id="33"/>
<i9 id="36"/>
<i10 id="39"/>
<i11 id="42"/>
<i12 id="45"/>
<i13 id="48"/>
<i14 id="51"/>
<i15 id="54"/>
<i16 id="57"/>
<i17 id="60"/>
<i18 id="63"/>
<i19 id="66"/>
<i20 id="69"/>
<i21 id="72"/>
<i22 id="75"/>
</items>
</id5>
<id1 type="flWorkspace" id="1">
<items count="23">
<i0 id="3"/>
<i1 id="7"/>
<i2 id="10"/>
<i3 id="13"/>
<i4 id="16"/>
<i5 id="19"/>
<i6 id="22"/>
<i7 id="25"/>
<i8 id="33"/>
<i9 id="36"/>
<i10 id="39"/>
<i11 id="42"/>
<i12 id="45"/>
<i13 id="48"/>
<i14 id="51"/>
<i15 id="54"/>
<i16 id="57"/>
<i17 id="60"/­’*‚ <---------------- тут все обрубается..... почему ?


сам XML парсица, проблем нет...

:) как еще можно вывести весь XML ?




Цитата(Алексей1153 @ 6.7.2010, 15:39) *
А в чём выражается?

То есть, покажи, что (и как) вводил, и что вывелось :)


Или пробую вывести в элемент дерева (куча всяких XMLек), таже хрень в том же месте:

QTreeWidgetItem * hdata = new QTreeWidgetItem(item);
hdata->setText(0, doc->toString());
kuzulis
Может потому что где-то в документе есть символ, код которого '\0' и поэтому QString считает что на этом месте строка закончилась. Попробуй вывести данные как QByteArray
ltise
Вот цикл:


    
    QDomDocument doc;
    QDomElement root = doc.createElement(QString("root"));
    doc.appendChild(root);
    for(int i=0; i < 100; i++){
        QDomElement e = doc.createElement(QString("e%1").arg(i));
        root.appendChild(e);
        for(int j=0; j < 10; j++){
            QDomElement ee = doc.createElement(QString("ee%1").arg(j));
            e.appendChild(ee);
        }

    }
    qDebug() << doc.toString();


выводит:

<root>
<e0>
<ee0/>
<ee1/>
<ee2/>
...
...
<ee7/>
<ee8/>
<ee9/>
</e8>
<e9>
<ee0/>
<ee1/>
<ee2/>
<ee3/>
<ee4/>
<ee5/>
<ee6/>
<ee7/>
<ee8/>
z5Øh2îÍ <---------------- тут отрезает



Алексей1153
а прикрепи файл XML. Надо в хексах посмотреть, что там лежит, да и всё
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.