JSON speichert benannte Werte und Listen. Füge es in das Eingabefeld ein und wähle die gewünschte Aktion. „Formatieren“ macht den Text durch Einrückungen lesbarer. Die anderen Modi dienen zum Prüfen, Ändern oder Konvertieren der Daten. Eingabe und Ausgabe bleiben getrennt. Die Eingabe ändert sich erst, wenn du eine Reparatur ausdrücklich übernimmst oder einen Wert unter „Baumansicht“ bearbeitest.
JSON formatieren
Wähle „Formatieren“.
Füge das folgende Beispiel in „JSON-Eingabe“ ein.
Das formatierte Ergebnis erscheint neben der Eingabe, auf kleineren Bildschirmen darunter.
Wähle die gewünschte Einrückung und kopiere die Ausgabe oder lade sie herunter.
{"name":"Alex","items":["Tea","Coffee"],"active":true}
„Automatisch formatieren“ ist standardmäßig eingeschaltet. Das Ergebnis wird daher beim Tippen aktualisiert. Wenn du die Option ausschaltest, drücke nach dem Bearbeiten die Hauptaktion. Auf dem Telefon findest du die Einstellungen unter „Formatierungsoptionen“ und weitere Aktionen unter „Mehr“.
„Datei laden“ akzeptiert Textdateien mit der Endung JSON, TXT oder JS. Für die normalen Modi muss ihr Inhalt weiterhin gültiges JSON sein. „Beispiel“ öffnet die Beispielauswahl. „Datei laden“ und „Beispiel“ fragen vor dem Ersetzen vorhandener Inhalte nach. „Einfügen“ ersetzt die Eingabe direkt.
Einrückung und Datenänderungen wählen
| Option | Wirkung |
|---|---|
| Einrückung | In Modi mit Einrückung stehen zwei Leerzeichen, vier Leerzeichen, ein Tabulator oder „Kompakt“ zur Wahl. |
| Schlüssel sortieren | Sortiert Objektschlüssel alphabetisch, auch in verschachtelten Objekten. |
| Reihenfolge beibehalten | Lässt die Sortierung ausgeschaltet. Kann nicht gleichzeitig mit „Schlüssel sortieren“ aktiv sein. |
| Null-Werte entfernen | Entfernt Eigenschaften und Array-Einträge mit dem Wert null aus der formatierten Ausgabe, auch in verschachtelten Daten. |
| Unicode maskieren | Schreibt Zeichen außerhalb von ASCII im formatierten JSON als Escape-Sequenzen. |
| Synchron scrollen | Scrollt den zweiten Editor mit, wenn du den ersten scrollst. |
Nicht alle Optionen sind in jedem Modus verfügbar. Für die oben beschriebenen Änderungen verwende „Formatieren“ oder „Reparieren“. „Kompakt“ entfernt die Einrückung. Konvertierungen in andere Formate folgen eigenen Ausgaberegeln.
„Null-Werte entfernen“ verändert die Daten, auch die Positionen in Arrays. Sortieren und Parsen können zudem die Reihenfolge der Schlüssel verändern. Bei doppelten Schlüsseln bleibt der letzte Wert erhalten. Sehr große Zahlen können an Genauigkeit verlieren. Muss jede Ziffer einer langen Kennung erhalten bleiben, speichere diese bereits in der Quelle als Zeichenfolge in Anführungszeichen.
Ungültige Syntax reparieren
Die normalen Modi melden ungültiges JSON, ohne es stillschweigend zu reparieren. Wechsle zu „Reparieren“ oder wähle „Reparieren“ neben der Fehlermeldung, um eine Reparatur zu versuchen.
„Reparieren“ kann häufige Probleme wie einfache Anführungszeichen, abschließende Kommas, Kommentare und Schlüssel ohne Anführungszeichen beheben. Prüfe das Ergebnis, bevor du „In Eingabe übernehmen“ wählst. Gültiges JSON allein belegt nicht, dass die Reparatur die beabsichtigten Daten erhalten hat.
Wenn die Reparatur kein Ergebnis liefert, prüfe die Quelle anhand der Fehlermeldung. Korrigiere den betroffenen Wert anhand der tatsächlichen Daten, statt fehlende Inhalte zu erraten.
Baumansicht prüfen und bearbeiten
„Baumansicht“ zeigt verschachtelte Objekte und Listen als aufklappbare Zeilen. Öffne einzelne Zweige über die Pfeile oder steuere den gesamten Baum mit „Alle aufklappen“ und „Alle zuklappen“.
Im Hauptbaum kannst du einen Wert oder Objektschlüssel durch Anklicken bearbeiten. Enter oder ein Klick außerhalb übernimmt die Änderung, Escape verwirft sie. Ein Schlüssel kann keinen Namen erhalten, der im selben Objekt bereits existiert.
Ein bearbeiteter Wert wie 42, true, false oder null, erhält den entsprechenden JSON-Typ. Anderer Text wird als Zeichenfolge gespeichert. Prüfe den resultierenden Typ, wenn du eine Kennung bearbeitest, die wie eine Zahl aussieht.
Änderungen im Baum aktualisieren auch die JSON-Eingabe. Der Vollbildbaum ist schreibgeschützt. „Kopieren“ kopiert dort den angezeigten Baumtext. Für eine JSON-Datei verwende die normale JSON-Ausgabe.
Zwei Dokumente vergleichen
Wähle „Vergleichen“ und füge in jeden Bereich ein JSON-Dokument ein. Das Werkzeug vergleicht die Textzeilen und fasst hinzugefügte, entfernte und geänderte Werte zusammen. Beide Eingaben müssen gültiges JSON sein.
Mit den Schaltflächen für die vorherige und nächste Änderung wechsle zwischen markierten Unterschieden. Eine einheitliche Formatierung beider Bereiche kann den Vergleich erleichtern. Arrays werden nach Position verglichen. Das Verschieben eines Eintrags kann daher als mehrere Änderungen erscheinen.
„Vergleichen“ hat zwei eigene Eingaben und eine eigene Vollbildansicht. „Datei laden“, „Einfügen“, „Beispiel“ und „Leeren“ wirken jeweils auf den Bereich, dessen Bedienelemente du verwendest.
Werte mit JSONPath finden
JSONPath beschreibt einen kurzen Pfad zu einem Wert innerhalb von JSON. Wähle JSONPath, gib eine Abfrage ein und drücke „Ausführen“. Die Abfrage beginnt mit $. Dieses Zeichen steht für das gesamte Dokument.
{"items":[{"name":"Tea","price":12},{"name":"Coffee","price":25}]}
| Abfrage | Ergebnis für dieses Beispiel |
|---|---|
| $.items[0].name | Tea. Index 0 bezeichnet den ersten Eintrag. |
| $.items[*].name | Die Namen beider Einträge. |
| $..price | Alle Werte mit dem Schlüssel price unterhalb der Dokumentwurzel. |
| $.items[?(@.price > 20)].name | Coffee. |
| $.missing | Ein leeres Ergebnis: []. |
Die lokale Implementierung unterstützt Schlüssel, Indizes, Platzhalter, rekursive Suche, vorwärts laufende Array-Ausschnitte, die Auswahl mehrerer Indizes und einfache Vergleichsfilter. Nicht alle Ausdrücke anderer JSONPath-Implementierungen werden unterstützt. Ein Treffer liefert den Wert selbst, mehrere Treffer eine Liste und kein Treffer [].
In CSV, XML oder YAML konvertieren
Wähle „Umwandeln“ und das Ausgabeformat. „Kopieren“ übernimmt den Ausgabetext in die Zwischenablage. „Herunterladen“ verwendet die passende Dateiendung.
| Format | Änderung der Struktur |
|---|---|
| CSV | Bei einer Liste von Objekten bestimmt das erste Objekt die Spaltennamen. Felder, die erst in späteren Objekten vorkommen, entfallen. Verschachtelte Objekte und Arrays bleiben als JSON-Text in den Zellen erhalten. |
| XML | Fügt ein Wurzelelement hinzu, verwendet Objektschlüssel als Elementnamen und wiederholt Elemente für Array-Einträge. Unzulässige Zeichen in Namen werden ersetzt. |
| YAML | Schreibt die eingelesenen JSON-Daten als YAML. |
Ein einzelnes Objekt wird in CSV zu den Spalten key und value. Diese Konvertierungen erzeugen eine Ausgabe aus dem eingegebenen JSON. CSV, XML oder YAML lassen sich hier nicht zurück in JSON einlesen.
„Herunterladen“ verwendet sowohl in der Hauptansicht als auch im Vollbild das ausgewählte Ausgabeformat.
Schlüsselnamen ändern
„Schlüssel ändern“ bietet „Unverändert“, camelCase, snake_case, kebab-case und UPPER_CASE. Geändert werden Objektschlüssel, auch in verschachtelten Daten. Normale Zeichenfolgenwerte bleiben unverändert.
Zwei unterschiedliche Schlüssel können denselben Namen erhalten. Zum Beispiel können first_name und first-name beide zu firstName werden. Das Werkzeug warnt vor dieser Kollision, doch die Ausgabe kann nur einen der Werte behalten. Prüfe vor dem Speichern die Warnung und die Quelle.
Schema prüfen oder Typen erzeugen
„Prüfen“ prüft, ob die Eingabe gültiges JSON ist. Füge im zweiten Bereich ein JSON Schema hinzu, um auch Anforderungen wie Feldtypen, Pflichtfelder und zulässige Werte zu prüfen. Fehlermeldungen nennen die betroffene Stelle in den Daten.
„Aus JSON generieren“ füllt den Schemabereich mit einem aus dem aktuellen Beispiel abgeleiteten draft-07-Entwurf. Prüfe ihn, bevor du ihn als Spezifikation verwendest. Ein einzelnes Beispiel kann nicht alle Werte beschreiben, die deine Anwendung zulässt.
TypeScript erzeugt Schnittstellen aus der Eingabe, beginnend mit RootObject. Kopiere das Ergebnis oder lade die TS-Datei herunter. Die abgeleiteten Typen beschreiben das gelieferte Beispiel. Für optionale Felder oder darin nicht enthaltene Werte können Anpassungen nötig sein.
Tastatur verwenden
| Aktion | Tasten |
|---|---|
| Tabulator in die JSON-Eingabe oder den Vergleichseditor einfügenIn diesen Editoren fügt Tab einen Tabulator ein, statt zum nächsten Bedienelement zu wechseln. | Tab |
| Änderung im Hauptbaum übernehmenKlicke zuerst auf einen Schlüssel oder Wert. | Enter |
| Bearbeitung im Baum abbrechen | Escape |
| Beispieldialog oder Vollbildansicht schließenEin offener Beispieldialog schließt sich vor der darunterliegenden Ansicht. | Escape |
| Gesamten Text im aktiven Editor auswählen |
MacCommand + A
Windows / LinuxCtrl + A
|
| Text in den aktiven Editor einfügen |
MacCommand + V
Windows / LinuxCtrl + V
|
Ausgabe prüfen und sichern
Bei ungültiger Eingabe wird die normale Ausgabe geleert und eine Fehlermeldung angezeigt. Zeichenfolgen und Eigenschaftsnamen müssen in JSON in doppelten Anführungszeichen stehen. Nach dem letzten Eintrag darf kein Komma folgen. „Reparieren“ kann bei Syntaxfehlern helfen, prüft aber nicht die inhaltliche Richtigkeit der Daten.
„Leeren“ fragt vor dem Löschen einer gefüllten Eingabe nach. Nach dem Neuladen der Seite werden JSON und Ausgabe nicht wiederhergestellt. Kopiere oder lade sie vorher herunter. Der gewählte Modus und die Nutzungsstatistik können auf diesem Gerät gespeichert bleiben.
Die Verarbeitung erfolgt im Browser. Das Werkzeug ruft keine Daten von einer als Text eingefügten API-Adresse ab. Kopiere für die Arbeit mit einer API-Antwort deren Inhalt oder lade die gespeicherte JSON-Datei.