в настоящее время я работаю над синтаксическим анализом xml на c и c ++
Я использую библиотеку pugixml в c ++ и библиотеку libxml2 в c для синтаксического анализа xml
Предположим, у меня есть корневой элемент в xml как «конфигурация», и у него есть 4 дочерних элемента: версия протокола, имя сервера, список daqlist и устройство.
Теперь я могу получить корневой элемент (конфигурацию), используя этот корень, я хочу переместить его конкретный дочерний элемент (устройство), не перемещая его по одному.
В C ++ при использовании pugixml у нас есть следующая строка для прямого перехода от конфигурации к ее дочернему устройству, doc.child («Configuration»). Child («device»).
В c с использованием libxml я просто перемещаю одного за другим дочернего элемента, как, если cur node является корневым (конфигурация), тогда я использую, cur = cur-> children-> next-> next-> next-> next-> next-> next-> next-> next-> next (для перехода на устройство из конфигурации)
Я не хочу переходить к следующему следующему .. Я хочу, чтобы простая функция перемещалась от текущего к конкретному узлу в c с помощью libxml .. Может ли кто-нибудь помочь решить эту проблему ..?