Здравствуйте.
Делаю запрос, получаю данные, но при помощи evaluateTo получаю их в строку, что не удобно для работы.
Вид XML следующий:
<items>
<item>
<id>102044</id>
<image>parcer_13_1310215068.jpg</image>
<name>Harley Davidson Touring Road King</name>
<date>3/2006</date>
<price>5554</price>
<valuta>EUR</valuta>
<timeadded>1310215068</timeadded>
</item>
<item>
<id>102041</id>
<image>parcer_28_1310215003.jpg</image>
<name>Aprilia RS 50 Motorhispania Sondermodell RACING</name>
<date>4/2004</date>
<price>1234</price>
<valuta>EUR</valuta>
<timeadded>1310215003</timeadded>
</item>
</items>
Мне нужно получить многомерный массив, вида:
Array (
[id]=значение
[image] = значение
[name] = значение
[date] = значение
[price] = значение
[valuta] = значение
[timeadded] = значение
}
[1] {
[id]=значение
[image] = значение
[name] = значение
[date] = значение
[price] = значение
[valuta] = значение
[timeadded] = значение
и т.д.
}
)
Мой код который получает ид в строку:
QByteArray data = reply->readAll();
qDebug() << data;
QXmlQuery query;
QString toinputxml;
toinputxml = data;
query.setFocus(toinputxml.toUtf8());
query.setQuery("/items/item/id/text()");
QString str;
query.evaluateTo(&str);
qDebug() << str;
Данные получаю с сервера, ид успешно матчатся, но только в строку, и только соответственно ид.
как лучше быть в моем случае, спасибо.