Kostenloser XML zu C Struct-Generator
XML in C-Structs für libxml2 und tinyxml2 kostenlos im Browser konvertieren.
XML-Eingabe
C-Ausgabe
Was ist XML zu C?
Sie haben eine XML-Konfiguration, eine SOAP-Antwort oder einen Datenfeed — und Ihr C-Projekt muss diese verarbeiten. C bietet keine integrierte XML-Unterstützung, daher müssen Sie Elemente manuell auf Struct-Felder abbilden. Bibliotheken wie libxml2, der schnelle Expat-Parser oder das schlanke tinyxml2 übernehmen das eigentliche Parsen — aber Sie brauchen zuerst die Struct-Definitionen. Dieses Tool liest Ihre XML-Struktur und erstellt die typedef struct-Definitionen. Die W3C-XML-Spezifikation definiert das Format; alles läuft lokal über DOMParser.
So verwenden Sie dieses Tool
XML einfügen oder hochladen
Fügen Sie XML ein oder laden Sie eine Datei hoch. Setzen Sie Struct-Name und Paket in der Konfiguration.
C-Ausgabe prüfen
Das rechte Panel zeigt generierte Structs. Nutzen Sie libxml2 oder tinyxml2 zum Parsen und Befüllen. Sie müssen den Speicher verwalten.
Kopieren oder Herunterladen
Nutzen Sie Kopieren oder Herunterladen. Für JSON zu C: JSON zu C. Für XML-Formatierung: XML Formatierer.
Wann XML zu C hilft
Bei der Entwicklung von Embedded-Systemen oder C-Apps, die XML-Konfiguration oder SOAP nutzen, generieren Sie hier Structs. Nutzen Sie libxml2 oder tinyxml2 zum Parsen und Befüllen.
Häufig gestellte Fragen
Welche XML-Bibliothek für C — libxml2 oder Expat?
libxml2 ist ein vollständiger DOM-Parser — ideal für gezielte Elementabfragen. Expat ist ein schneller SAX-Streaming-Parser — besser für große Dateien. tinyxml2 ist schlank und beliebt in Spiele-Engines und Embedded-Systemen.
Wie befülle ich ein C-Struct mit libxml2?
Parsen Sie das Dokument mit xmlReadMemory(), durchlaufen Sie den Knotenbaum mit xmlNodeGetContent() für Text und xmlGetProp() für Attribute. Weisen Sie Werte den Struct-Feldern zu und geben Sie das Dokument mit xmlFreeDoc() frei.
Muss ich den Speicher für Struct-Strings verwalten?
Ja. char*-Felder erfordern malloc() und free(). Verwenden Sie strdup(), um String-Inhalte zu kopieren, und geben Sie jedes Feld vor dem Struct frei.
Werden meine XML-Daten an einen Server gesendet?
Nein. Die Verarbeitung läuft vollständig in Ihrem Browser. Nichts wird hochgeladen oder gespeichert.
XML zu C Beispiele
Hier ein Beispiel für die Generierung von C-Structs aus XML.
Beispiel: Teilnehmerdatensatz
XML-Eingabe:
Generierte C-Ausgabe: