Russian Qt Forum
Май 03, 2024, 17:01 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Чтение XML файла в определенной последовательности.  (Прочитано 3929 раз)
Andry-Bal
Гость
« : Август 17, 2014, 22:45 »

Здравствуйте!! Столкнулся с такой проблемой: есть созданный XML файл (DOM метод), содержащий разноименные теги, который нужно прочитать. Причем читать (доставать) содержимое нужно именно в той последовательности,в которой они записаны в файле. То есть стандартный способ поиска элементов по имени не канает.Подскажите,пожалуйста, каким образом можно читать документ последовательно от начала до конца? Спасибо большое.
Пример XML документа:
Код:
<code>
 <Variable type="long int" name="variable"/>
 <Function type="int" arg_num="2" name="function">
  <Arguments>
   <variable type="char" name="arg1"/>
   <variable type="short int" name="arg2"/>
  </Arguments>
 </Function>
 <Operator name=">="/>
 <Structure arg_num="2" name="structure">
  <Arguments>
   <variable type="int" name="sat1"/>
   <variable type="char" name="st2"/>
  </Arguments>
 </Structure>
 <Condition arg_num="3" name="if">
  <Arguments>
   <variable type="int" name="var"/>
   <operator name=">"/>
   <num_sym value="numb"/>
  </Arguments>
 </Condition>
 <Cycle arg_num="3" name="for">
  <Arguments>
   <variable type="int" name="val"/>
   <operator name="-"/>
   <num_sym value="3"/>
  </Arguments>
 </Cycle>
 <Num_Sym name="34"/>
</code>
Записан
Bepec
Гость
« Ответ #1 : Август 17, 2014, 23:03 »

ReadLn, уже более 20 лет на службе у программистов Веселый

А так QXmlStramReader вроде позволяет пройтись readNext().

Ещё Sax reader (не помню названия класса точно) позволяет это же. Примеры в поставку Qt входят Улыбающийся
« Последнее редактирование: Август 17, 2014, 23:05 от Bepec » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.046 секунд. Запросов: 20.