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

Хочу хранить настройки приложения в xml. В связи с этим он будет иметь примерно такой вид:
<global_module1>
   <cityName>param<\cityName>
   <countryName>param<\countryName>
   <regionName>param<\regionName>
<\global_module1>

<global_module2>
   <setting1>param<\setting1>
...
<\global_module2>


Т.е. в xml будет не единая структура с одинаковыми блоками, а с разными. Вопрос, можно ли обойтись как-то без циклов перебора всех дочерних элементов? Т.е. У какого-то элемента взять и вытащить дочерний элемент по имени? Предполагаю что нет конечно... но вдруг? Уж очень нехояется в цикле ставить кучу if-ов на проверку имени тэга...

Спасибо!

--------
UPD
Сам отвечаю: можно!!! Функа QDomElement::firstChildElement принимает в качестве аргумента тэг ))
Алексей1153
Rocky,

вот так компактнее будет (и разбирать проще)

<global_module1 cityName="dfgdfg" countryName="dfgdfh" regionName="asdfsdfg">

</global_module1>



а во вложенных тегах удобно размещать массивы:

<global_module1 cityName="dfgdfg" countryName="dfgdfh" regionName="asdfsdfg">
  <array1 count="3">
    <elem id="1"/>
    <elem id="3"/>
    <elem id="7"/>
  </array1>
  <array2 count="2">
    <elem id="8"/>
    <elem id="9"/>
    <elem id="11"/>
  </array2>
</global_module1>


атрибут count опционален (более того - произволен), но полезен для примерного резервирования памяти при загрузке массива в озу

кстати, там слеш должен быть, а не бэкслеш, как у тебя.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.