XML Data Binding in C++ (Boost)



  • Hallo,

    ich bin auf der Suche nach Möglichkeiten aus C++ Klassen XML-Dateien zu erzeugen (serialisieren) und umgekehrt. Bisher habe ich DOM-Parser, wie TinyXML verwendet und die Klassen haben sich die Daten dann selbst abgeholt. Das war verbunden mit Datenkonvertierungen usw.

    Das Problem bei so einem Vorgehen ist natürlich das die Klasse zu sehr mit XML in Kontakt kommt und mann den ganzen Serialisierungsmechanismus integrieren muss.

    In C# oder Java gibt es dafür Serialisierungsmechanismen für das Data-Binding.

    Weiterhin soll das XML-Schema sich im Laufe der Zeit verändern, so dass eine Abwärtskompatibilität vorhanden sein muss.

    Hat jemand Erfahrungen mit XML Serialization machen können? Im Netz sind nicht sehr viele Informationen zu finden. Anscheiend schreibt Boost in die XML-Dateien noch zusätzliche Serialisierungsdaten.



  • Stefan1643 schrieb:

    Anscheiend schreibt Boost in die XML-Dateien noch zusätzliche Serialisierungsdaten.

    Zumindest mit dem von Boost implementierten xmlarchive, ja. Wenn du relativ einfache Datenstrukturen hast (ohne große gegenseitige Referenzierungen und Pointer usw.) sollte es realtiv einfach sein, eine eigene Archive-Klasse zu schreiben, die die Daten so formatiert wie du sie gerne hättest.


Anmelden zum Antworten