Здравствуйте, гость ( Вход | Регистрация )
borune | Дата 6.2.2011, 14:56 |
Ребят, вот такой вопрос. Имеется xml следующего формата: Раскрывающийся текст <?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE info> <level1_1> <level2_1 name="level2text1"></level2_1> <level2_1 name="level2text2"></level2_1> </level1_1> <level1_2> <level2_2 name="sample text1"></level2_2> <level2_2 name="sample text2"></level2_2> </level1_2> Надо из него прочитать информацию (а конкретно текст атрибутов тегов второго уровня - "level2text1", "level2text2", "sample text1" и "sample text2"). Читаю с помощью QDomDocument так: code QDomDocument info; QFile file(filename); file.open(QIODevice::ReadOnly); info.setContent(file.readAll()); file.close(); QDomNodeList lst1 = info.elementsByTagName("level2_1"); // обработка элементов списка lst QDomNodeList lst2 = info.elementsByTagName("level2_2"); Но почему-то список lst2 оказывается пустым. Из этого можно сделать вывод, что метод elementsByTagName ищет теги только в пределах первого тега первого уровня (в моем случае - level1_1), и не рассматривает данные, находящиеся за пределами этого тега. Как заставить его увидеть данные других тегов первого уровня? UPD: проблема была в неправильной структуре xml. Исправил - все прочиталось |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 24.4.2024, 15:10 |