Werkzeuge

XML-zu-JSON-Konverter

Wandeln Sie XML – RSS-Feeds, Sitemaps, SOAP-Antworten, Maven-POMs – in JSON und zurück um, mit Attributen unter einem Präfix Ihrer Wahl.

Läuft im BrowserDatenformate3138
Kostenlos

Eingabe

0 B

Ergebnis

Das Ergebnis erscheint hier.

XML ist nach wie vor die Sprache von RSS- und Atom-Feeds, Sitemaps, SOAP-Diensten und Maven-Builds, und der meiste Code, der es verarbeitet, hätte lieber JSON. Dieses Werkzeug konvertiert in beide Richtungen mit fast-xml-parser, einem abhängigkeitsfreien Parser, der im Node-Ökosystem weit verbreitet ist. Das Dokument wird zuerst validiert, sodass ein fehlendes schließendes Tag mit Zeile und Spalte gemeldet wird, statt ein halbes Ergebnis zu erzeugen. Attribute landen unter einem Präfix, standardmäßig @_, damit sie nie mit gleichnamigen Kindelementen kollidieren, und Text bleibt als String erhalten, sofern Sie nicht verlangen, dass Zahlen und Booleans geparst werden.

So arbeitet es

  • Wiederholte Geschwisterelemente wie die <item>s eines RSS-Channels werden zu einem JSON-Array; ein einzelnes bleibt ein Objekt.
  • Ein Element mit Attributen und Text bekommt seinen Text unter #text, neben den Attributen mit Präfix.
  • Typisierte Werte sind standardmäßig aus, sodass <version>2.10</version> als "2.10" erhalten bleibt, statt zur Zahl 2.1 zu werden.
  • In Richtung XML braucht das JSON genau einen Schlüssel auf oberster Ebene, der zum Wurzelelement wird.

Wohin Ihre Daten gehen

Nirgendwohin. Dieses Werkzeug läuft vollständig in Ihrem Browser: Der eingefügte Text wird von der Seite verarbeitet und weder an einen Server übertragen noch protokolliert.

Dieses Tool ist kostenlos und braucht kein Konto. Die Ergebnisse existieren nur in Ihrer geöffneten Seite und werden nirgends gespeichert.

Was es kostet

Dieses Werkzeug ist kostenlos, ohne Anmeldung und ohne Punkte.

Häufige Fragen

Warum ist ein <item> ein Objekt, zwei aber ein Array?
XML selbst sagt nicht, ob sich ein Element wiederholen kann; das tut nur ein Schema. Bei einem einzelnen <item> hat der Konverter keinen Grund, ein Array anzulegen. Erwartet Ihr Code jedes Mal ein Array, normalisieren Sie nach der Konvertierung, zum Beispiel mit [].concat(channel.item).
Was bedeutet das Präfix @_?
Es kennzeichnet Schlüssel, die aus Attributen statt aus Kindelementen stammen, sodass aus <guid isPermaLink="true"> der Eintrag "@_isPermaLink": "true" wird. Wählen Sie @ oder $, passend zu dem, was Ihr Code bereits verwendet. Dasselbe Präfix sagt der Richtung JSON zu XML, welche Schlüssel als Attribute zurückgeschrieben werden.
Was passiert mit Namespaces, Kommentaren und CDATA?
Namespace-Präfixe bleiben Teil des Namens, atom:link bleibt also atom:link. Kommentare werden verworfen, und CDATA-Abschnitte werden als gewöhnlicher Text gelesen. Die XML-Deklaration und Processing Instructions werden übersprungen, da sie keine Daten tragen.
Kann ich XML aus einer nicht vertrauenswürdigen Quelle gefahrlos einfügen?
Ja. fast-xml-parser lädt nie externe Entitäten oder DTDs, die klassischen XXE-Angriffe laufen also ins Leere, und die Konvertierung läuft innerhalb dieser Seite, ohne das Dokument irgendwohin zu senden.

Das Open Source dahinter

Dieses Werkzeug läuft auf NaturalIntelligence/fast-xml-parser, veröffentlicht unter MIT. Wer dasselbe Verhalten im eigenen Programm braucht, greift zu dieser Bibliothek.

NaturalIntelligence/fast-xml-parser

Auch bekannt als

  • XML zu JSON
  • JSON zu XML
  • XML Konverter online
  • RSS zu JSON
  • XML Parser online
  • XML in JSON umwandeln JavaScript