Библиотека сопоставления объектов C XML с C ?

#c

#c

Вопрос:

Есть ли какая — нибудь хорошая автоматическая объектная библиотека xml для C ?

С хорошим бенчмарком и мультиплатформенной поддержкой (если нет, то хотя бы linux)

Редактировать: Дополнительное описание

Я хочу, чтобы библиотека выглядела какhttp://www.codesynthesis.com/products/xsd где я могу использовать любой xml в качестве объекта c .

 XMLOBJECT x=new XMLOBJECT("my.xml");

x->root
x->root->child
  

Означает привязку данных XML в C

Комментарии:

1. Обратите внимание, что для этого вам необходимо предварительно обработать XSD для ваших типов XML для классов C . Вы не можете использовать произвольный XML для этого и ожидать, что для этого будет создан код. Это потому, что C не поддерживает динамическую генерацию классов. Это статически скомпилированный язык.

2. @Macke да, у меня будет XSD для каждого xml.

Ответ №1:

Я думаю, что вы имеете в виду то, что называется привязкой данных XML.

gsoap — это бесплатный инструмент, который делает это. Конечно, существует множество коммерческих инструментов — XML Spy и другие. Вот хороший список ресурсов.

Ответ №2:

boost::serialization предоставляет эту функциональность, вы можете сериализовать свой объект в xml и обратно, а также в другие форматы.

Ответ №3:

Если я правильно понимаю, вы ищете что-то вроде pococapsule

Ответ №4:

Мы используем Codalogic LMX; немного дорого, но у них есть бесплатная версия «express», которая может оказаться достаточно хорошей.

Ответ №5:

Вы можете попробовать эту библиотеку. Это мультиплатформенный

Ответ №6:

Их много. Пожалуйста, ознакомьтесь с некоторыми из них

Комментарии:

1. все ли они выполняют привязку данных или некоторые предназначены только для синтаксического анализа xml?

2. Некоторые из них предназначены только для синтаксического анализа. Например, TinyXML.