Arhn - архитектура программирования

Нет результатов с QXmlQuery

Я очень расстраиваюсь из-за этого...

С помощью этого простого xml:

<?xml version='1.0'?>
<root>
   <data>hello</data>
</root>

И этот код

QXmlQuery xquery;
xquery.setQuery( "doc('config.xml')//data" );

if( xquery.isValid() )
{
    QXmlResultItems itemResult;
 xquery.evaluateTo( &itemResult );
 QXmlItem item( itemResult.next() );
 while( !item.isNull() )
 {
  QVariant value = item.toAtomicValue();
  qDebug() << "One XML result!!!";
  item = itemResult.next();
 }
}

Этот код просто не дает мне никаких результатов. Я проверил, что путь выполнения приложения совпадает с расположением config.xml.

Официальная документация не очень мне помогает, и, кажется, в Интернете нет дополнительной информации о том, как использовать этот класс.

У меня есть другая программа, которая успешно загружает данные из xml, и код точно такой же, как опубликованный. Даже выдает мне ошибку, если файл xml не найден (чего не происходит с моим текущим приложением).

Конечно, я настраиваю файл .pro для использования xmlpatterns:

QT += xmlpatterns

Любая подсказка??

21.01.2010

  • Я начал новый проект, используя QCreator 1.31, и теперь, используя тот же код, я получаю сообщения stdout с жалобами на то, что файл не найден, когда .xml находится в корневом каталоге проекта. Жалобы исчезают и все работает при размещении файла .xml в папке сборки. 24.01.2010

Ответы:


1

Я помню, у меня тоже были проблемы с этим... Во всяком случае, я обнаружил, что использовал следующие строки:

QFile SourceDocument;
SourceDocument.setFileName(rXmlFilePath);
...
Query.bindVariable("inputDocument", &SourceDocument);
QString FinalQuery("declare variable $inputDocument external;doc($inputDocument)//chapter");
Query.setQuery(FinalQuery);

Я надеюсь, что это поможет вам немного!

22.01.2010
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..