JSON reparieren
Kostenloses Online-Tool zum Reparieren von JSON. Erkennt und behebt automatisch Kommas am Ende, einfache Anführungszeichen, Keys ohne Anführungszeichen, nicht geschlossene Klammern, Kommentare und Markdown-Wrapper. Entwickelt für KI-Ausgabe-Bereinigung und Wiederherstellung von abgeschnittenem JSON. Vollständig lokal im Browser.
Ähnliche Tools
Was ist JSON reparieren (JSON Repair)?
JSON reparieren (JSON Repair) ist der Prozess, einen nicht standardmäßigen JSON-Text, den ein strenger JSON-Parser aufgrund von Syntaxfehlern nicht verarbeiten kann, automatisch in eine gültige JSON-Zeichenkette wiederherzustellen, die RFC 8259 entspricht. Anders als beim JSON-Formatierer (Beautify) werden beim JSON-Reparieren keine Format-Unterschiede, sondern Strukturfehler behandelt: Kommas am Ende, einfache Anführungszeichen, fehlende Anführungszeichen, nicht geschlossene Klammern, Markdown-Wrapper, Kommentare - all das führt dazu, dass JSON.parse() eine SyntaxError auslöst, obwohl es in der realen Entwicklung äußerst häufig vorkommt.
Die Quellen für 'nicht standardmäßiges' JSON in realen Engineering-Projekten sind hochkonzentriert: ① Beim Kopieren von LLMs wie ChatGPT / Claude / Gemini ist die Ausgabe oft in Markdown-Code-Blöcke (```json ... ```) eingewickelt oder von Erklärungstext begleitet; ② Beim Kopieren aus JavaScript-Objekten via console.log() können Kommas am Ende und einfache Anführungszeichen mitkommen; ③ Konfigurationsdateien verwenden oft die erweiterte Syntax JSON5 / JSONC (die Kommentare, Keys ohne Anführungszeichen, mehrzeilige Zeichenketten usw. erlaubt); ④ Streaming-Antworten oder Log-Trunkierungen können JSON mitten im Fluss abbrechen, wobei das schließende `}` oder `"` fehlt. Ein JSON-Reparatur-Tool scannt den Eingabetext, identifiziert diese typischen Probleme und stellt den Inhalt nach dem Prinzip der 'minimalen Intrusion' auf Standard-JSON wieder her, wobei die ursprüngliche Datensemantik so weit wie möglich erhalten bleibt.
Auf der Implementierungsebene besteht JSON-Reparatur typischerweise aus zwei Phasen: ① Tolerant Parse - Verwendung eines auf Zustandsautomaten basierenden Scanners statt regulärer Ausdrücke, um den Zeichenstrom Schritt für Schritt zu verarbeiten und Syntaxzeichen 'innerhalb von Zeichenketten' von 'außerhalb' zu unterscheiden; ② Canonical Output - Neugenerierung des Ergebnisses mit `JSON.parse` + `JSON.stringify`, um sicherzustellen, dass die Ausgabe für jeden nachgelagerten strengen Parser 100% gültig ist. Das JSON-Reparatur-Tool von GeekFormat führt den gesamten Reparaturfluss lokal im Browser durch, ohne den ursprünglichen Inhalt an irgendeinen Server zu senden - geeignet für die Verarbeitung sensibler API-Antworten, interner Konfigurationsdateien und KI-Modellausgaben.
Anwendungsfälle
- KI/LLM-Ausgabe-Bereinigung: mit einem Klick in Markdown eingewickeltes, mit Erklärungstext und Kommas am Ende versehenes JSON von ChatGPT/Claude in Standard-JSON umwandeln
- Schnittstellen-Debugging und Fehlerbehebung: wenn API-Antworten durch Gateway- oder Netzwerkprobleme abgeschnitten werden, schnell Klammern und Zeichenketten vervollständigen, um die Originaldatenstruktur zu lokalisieren
- Aus der Konsole kopierte JavaScript-Objektliterale: einfache Anführungszeichen, Kommas am Ende und Keys ohne Anführungszeichen in einem Schritt korrigieren
- Konfigurationsdatei-Bereinigung: Kommentare aus JSON5/JSONC entfernen, um Standard-JSON zu erhalten, bereit für einheitlichen nachgelagerten Verbrauch
- Log- und Zwischenablage-Datenreparatur: JSON-Snippets mit Kommentaren, speziellen Leerzeichen oder Trunkierung schnell standardisieren
- Datenmigration und Skript-Vorverarbeitung: einen Reparaturschritt in die Datenmigrations-Pipeline einfügen, um zu verhindern, dass wenige ungültige JSONs eine ganze ETL-Charge blockieren
Anleitung
- Fügen Sie den fehlerhaften, in Markdown eingewickelten oder abgeschnittenen JSON-Inhalt in das linke Eingabefeld ein, oder klicken Sie auf 'Beispiel', um ein typisches kaputtes JSON zu laden, oder laden Sie eine .json/.txt-Datei hoch
- Das Tool erkennt und repariert automatisch häufige Syntaxprobleme; der rechte Ausgabebereich zeigt das formatierte Standard-JSON und die Anzahl jeder reparierten Problemklasse
- Wenn noch rote Fehlermeldungen vorhanden sind, können Sie die Eingabe manuell bearbeiten und die Reparatur erneut auslösen (Mac: ⌘+Shift+R, Windows: Ctrl+Shift+R)
- Nach Bestätigung der korrekten Struktur klicken Sie auf 'Kopieren', um das reparierte Ergebnis in die Zwischenablage zu legen, oder auf 'Herunterladen', um es als repaired.json für weitere Formatierung, Validierung usw. zu speichern
Funktionen
- Deckt 7 häufige Syntaxfehler ab: Kommas am Ende, einfache Anführungszeichen, Keys ohne Anführungszeichen, nicht geschlossene Zeichenketten, Kommentare, fehlende Klammern, Markdown-Code-Block-Wrapper
- Optimiert für KI-Ausgabe-Bereinigung: entfernt automatisch ```json Wrapper und umgebenden Erklärungstext; erkennt typische Ausgaben von ChatGPT, Claude, Gemini und anderen LLMs
- JSON5/JSONC kompatibel: parst erweiterte Syntax einschließlich Kommentaren, lockeren Anführungszeichen und speziellen Leerzeichen (z. B. unsichtbare Unicode-Zeichen)
- Intelligente Vervollständigung von abgeschnittenem JSON: behandelt abgeschnittene API-Antworten und fehlende schließende Klammern, indem fehlende Klammern und Anführungszeichen automatisch ergänzt werden
- Visualisierung der Reparaturprobleme: automatische Statistiken und Anzeige der Anzahl jeder reparierten Problemklasse für einfache Auditierung und menschliche Überprüfung
- Lokale Verarbeitung für Privatsphäre: Parsing, Reparatur und Formatierung passieren alle lokal im Browser, keine Eingabe wird an einen Server gesendet
- Nahtloser Übergang zur Formatierung: repariertes Standard-JSON kann direkt in JSON-Formatierer, Schema-Validator oder Code-Generator als nächste Schritte gehen
- Datei- und Beispiel-Laden: unterstützt das Hochladen von .json/.txt-Dateien oder Klicken zum Laden eines Beispiels zur schnellen Überprüfung der Reparaturwirkung
Codebeispiele
Programmatische Reparatur mit der jsonrepair JavaScript-Bibliothek
javascript// npm install jsonrepair
import { jsonrepair } from 'jsonrepair';
const broken = `{
name: 'Alice',
age: 30,
tags: ['dev', 'writer',], // Komma am Ende + Kommentar
}`;
try {
const fixed = jsonrepair(broken);
const obj = JSON.parse(fixed);
console.log(obj);
// => { name: 'Alice', age: 30, tags: ['dev', 'writer'] }
} catch (err) {
console.error('Immer noch nicht reparierbar:', err.message);
}Programmatische Reparatur mit der jsonrepair Python-Bibliothek
python# pip install jsonrepair
from jsonrepair import jsonrepair
import json
broken = '''{
name: "Alice",
age: 30,
tags: ["dev", "writer",], // Komma am Ende + Kommentar
}'''
fixed = jsonrepair(broken)
obj = json.loads(fixed)
print(obj)
# => {'name': 'Alice', 'age': 30, 'tags': ['dev', 'writer']}Schneller Komma-am-Ende-Fix mit jq + sed (nur Notfall)
bash# Entfernt Kommas am Ende von Objekten/Arrays (Notfalloption; behandelt KEINE Kommentare / einfachen Anführungszeichen) # Für komplexe Szenarien verwenden Sie eine dedizierte Bibliothek wie jsonrepair sed -E 's/,([ \t]*[}\]])/\1/g' broken.json > clean.json # Validiert die bereinigte Ausgabe jq . clean.json >/dev/null && echo 'JSON ist gültig'
Häufig gestellte Fragen
Was ist der Unterschied zwischen JSON reparieren und JSON formatieren?
JSON-Formatierer formatiert nur JSON neu, das bereits legal ist, aber inkonsistente Einrückung oder Abstände aufweist. JSON-Reparieren hingegen behandelt speziell JSON mit Syntaxfehlern: es korrigiert zuerst Strukturprobleme wie Kommas am Ende, einfache Anführungszeichen, Kommentare, fehlende Klammern und gibt dann das Standardformat aus. Wenn ein Formatierer-Tool einen SyntaxError auslöst, sollten Sie zuerst JSON-Reparieren verwenden.
Welche häufigen JSON-Syntaxfehler kann das Tool reparieren?
Das Tool enthält intelligente Reparatur-Algorithmen für die folgenden häufigen Probleme: 1) Kommas am Ende; 2) Einfache Anführungszeichen statt doppelte; 3) Keys ohne Anführungszeichen; 4) Nicht geschlossene Zeichenketten; 5) JavaScript-Zeilen-/Blockkommentare; 6) In Markdown-Code-Blöcke eingewickeltes JSON; 7) Fehlende schließende Klammern aufgrund von Trunkierung.
Warum ist die JSON-Ausgabe von KI oder LLMs oft nicht standardmäßig?
Große Sprachmodelle (z. B. ChatGPT, Claude, Gemini) erzeugen häufig JSON, das in Markdown (```json ... ```) eingewickelt ist, mit erklärendem Präfix/Suffix-Text, Kommas am Ende, Kommentaren oder mit unvollständiger Struktur aufgrund von Token-Trunkierung. JSON-Reparieren ist speziell für diese Szenarien optimiert, um KI-Ausgaben mit einem Klick in gültiges JSON zu bereinigen.
Ist das reparierte JSON strukturell immer identisch mit den Originaldaten?
Die reparierte Ausgabe ist eine gültige JSON-Zeichenkette, die dem JSON-Standard entspricht; die Datensemantik wird in der überwiegenden Mehrheit der Fälle erhalten. Da die Reparatur jedoch auf heuristischen Regeln basiert, kann sie in extrem kaputten oder mehrdeutigen Szenarien (z. B. mehrere fehlende Kommas in derselben Zeile) leicht von der ursprünglichen Absicht abweichen. Wir empfehlen Schema-Validierung oder menschliche Überprüfung für kritische Daten.
Warum nicht einfach Python json.loads oder JavaScript JSON.parse direkt verwenden?
Native Parser können bei SyntaxError nur Fehler auslösen, nicht reparieren. JSON-Reparieren ist eine tolerante Schicht, die vor nativen Parsern sitzt: es versucht zuerst, den Text zu reparieren, und übergibt ihn dann an den nativen Parser, um sicherzustellen, dass die endgültige Ausgabe von jedem strengen JSON-Parser konsumierbar ist. Die gleiche Idee kann als Vorverarbeitung in Produktionsumgebungen serverseitig angewendet werden.
Werden Kommentare in JSON5 / JSONC beibehalten?
Nein. Kommentare sind Teil der erweiterten JSON5-Syntax, nicht des Standard-JSON. Das Tool entfernt sie, um sicherzustellen, dass die Ausgabe dem Standard-JSON entspricht. Wenn Sie Kommentare beibehalten möchten, verwenden Sie weiterhin JSON5-Quelldateien oder die JSONC-Toolchain. Wenn Sie JSON5 in Standard-JSON konvertieren müssen, erledigt dieses Tool dies direkt.
Kann abgeschnittenes JSON (z. B. abgeschnittene Streaming-Ausgabe) repariert werden?
Ja. Das Tool versucht, fehlende rechte Klammern, eckige Klammern und schließende Anführungszeichen von Zeichenketten abzugleichen und so viel identifizierten Inhalt wie möglich zu erhalten. Hinweis: Wenn der Trunkierungspunkt innerhalb eines Zeichenkettenliterals liegt, müssen Sie möglicherweise die fehlenden Schlüsselzeichen manuell ergänzen.
Gibt es Datenverlust nach der Reparatur?
In häufigen Reparatur-Szenarien (Kommas am Ende entfernen, Anführungszeichen hinzufügen, Klammern vervollständigen, Kommentare entfernen) wird die Datensemantik vollständig erhalten. In seltenen Fällen, wenn der Originalinhalt irreversible Mehrdeutigkeit aufweist (z. B. verschachtelte Ebene zerstört), repariert das Tool so konservativ wie möglich und gibt das Original unverändert aus; es löscht nicht aktiv Felder oder Keys.
Kann ich mehrere JSONs stapelweise reparieren?
Dieses Tool repariert eine Eingabe nach der anderen. Für Batch-Szenarien empfehlen wir, den zugrunde liegenden Algorithmus lokal in einem Skript auszuführen (z. B. die Python jsonrepair-Bibliothek oder das josdejong/jsonrepair npm-Paket) und das Ergebnis dann zur menschlichen Überprüfung und Formatierung in dieses Tool zu importieren.
Muss ich nach der Reparatur noch formatieren und Schema validieren?
Empfohlen. Die Reparatur behebt hauptsächlich Fehler auf Syntaxebene; Formatierung und Schema-Validierung gewährleisten Lesbarkeit und Geschäftskorrektheit. Die Ausgabe des Reparatur-Tools verbindet sich nahtlos mit den JSON-Formatierer, Schema-Validator und Code-Generatoren von GeekFormat.
Lädt das Tool mein JSON auf einen Server hoch?
Nein. Alles Parsing, alle Reparatur und Formatierung passiert lokal im Browser; weder Eingabe noch Zwischenergebnisse werden an irgendeinen Server gesendet. Funktioniert offline, geeignet für die Verarbeitung sensibler JSON (z. B. Produktions-API-Antworten, interne Konfigurationen).
Kann ich die jedes Mal verwendete Reparaturstrategie fixieren?
Dieses Tool aktiviert standardmäßig alle häufigen Reparaturregeln, um die Erfolgsquote zu maximieren. Wenn Sie eine feinkörnige Kontrolle über Regeln für eine bestimmte Sprache oder ein Team benötigen, können Sie die jsonrepair-Bibliothek in Ihrer Produktionsumgebung verwenden und bestimmte Regeln selektiv aktivieren oder deaktivieren. Die Ausgabe dieses Tools kann auch als standardisierte Eingabe für nachgelagerte Validierung dienen.
Fehlerbehebung
Fehler 'Dieses JSON kann nicht repariert werden'
Ursache: Der Eingabetext weist schwere strukturelle Schäden auf, wie mehrere fehlende Klammern, abgeschnittene Zeichenkettenliterale oder beschädigten Zeichensatz. Lösung: Öffnen Sie zuerst die Originaldatei in einem Nur-Text-Editor, bestätigen Sie, dass die Kodierung UTF-8 ohne BOM ist und es sich nicht um eine komprimierte Binärdatei handelt; wenn die Daten aus einer API-Antwort stammen, wenden Sie sich an den Upstream zur Vervollständigung; bei extrem kaputten Datensätzen verwenden Sie die Quelldatei direkt.
Felder werden nach der Reparatur an die falsche Position verschoben
Ursache: Der Originaltext enthielt JSON-Syntaxzeichen (z. B. //, /*, }) in Kommentaren oder Zeichenkettenliteralen, die den Parser in die Irre führten; oder die Verschachtelungsebene ist so tief, dass der Klammerabgleich verschoben ist. Lösung: Escape-Sequenzen für // und /* in Zeichenketten manuell hinzufügen; für tief verschachtelte Daten temporäre äußere Klammern oder Zeilenumbrüche hinzufügen, bevor die Reparatur erneut ausgeführt wird.
Erklärungstext in der KI-Ausgabe wird nicht entfernt
Ursache: KI-Ausgaben beginnen/enden oft mit natürlicher Sprache (z. B. 'Hier ist das Ergebnis:') und können sich über mehrere Zeilen erstrecken. Lösung: Verwenden Sie einen Texteditor, um den Text außerhalb des JSON-Blocks zu löschen und nur den Inhalt innerhalb des äußersten ```json Wrappers beizubehalten; wenn das Tool es immer noch nicht erkennt, fügen Sie manuell die äußersten { } hinzu, bevor Sie die Reparatur erneut ausführen.
Größe ändert sich nach der Reparatur nicht, oder einige Zeichen wurden ersetzt
Ursache: Das Original enthielt Backslashes, Unicode-Escapes oder HTML-Entities, die das Tool gemäß den JSON-Regeln neu escaped hat. Lösung: Überprüfen Sie, ob das Original in einer JS-Zeichenkette verschachtelt war; wenn es in einer HTML-Seite enthalten ist, zuerst HTML dekodieren; mehr Zeichen nach dem Escapen ist normal.
Browser zeigt 'Nicht genügend Speicher' oder friert ein
Ursache: Eine einzelne Eingabe über 5–10 MB übt erheblichen Speicherdruck auf den Browser aus. Lösung: Teilen Sie die Daten in kleinere Stapel (jeweils 1–2 MB); oder verwenden Sie die jsonrepair-Bibliothek serverseitig für Streaming; ein kleiner Unterschied zwischen repariertem Ergebnis und Original ist normal.
Schema-Validierung meldet nach der Reparatur weiterhin Fehler
Ursache: JSON-Reparieren behebt nur Fehler auf Syntaxebene; es setzt keine Geschäftsfeldnamen, -typen oder -werte gegen das Schema durch. Lösung: Verwenden Sie das JSON-Schema-Validierungstool von GeekFormat, um Feldeinschränkungen zu überprüfen; lokalisieren Sie bestimmte Felder anhand des Fehlers und korrigieren Sie sie manuell.
Glossar
- JSON
- JavaScript Object Notation, ein leichtgewichtiges, schlüsselwertbasiertes Datenaustauschformat, definiert in RFC 8259. De-facto-Standard für REST-APIs, Konfigurationsdateien und Logs.
- RFC 8259
- Die offizielle JSON-Spezifikation der IETF, die die strenge Syntax für gültiges JSON definiert - alle Keys müssen in doppelten Anführungszeichen stehen, nur eine begrenzte Anzahl von Zeichen in Zeichenketten müssen escaped werden, Kommentare und Kommas am Ende sind nicht erlaubt.
- JSON.parse
- Der in JavaScript und modernen Browsern eingebaute strenge JSON-Parser, der RFC 8259 folgt. Wirft SyntaxError bei jedem Syntaxfehler und kann keine tolerante Reparatur durchführen.
- JSON5
- Eine erweiterte Syntax für JSON (nicht standardisiert), die Keys ohne Anführungszeichen, Zeichenketten mit einfachen Anführungszeichen, Kommentare (// und /* */), Kommas am Ende, Hexadezimalzahlen usw. erlaubt. Einfacher für Menschen zu schreiben, aber inkompatibel mit JSON.parse.
- JSONC
- JSON with Comments, ein generischer Name, der von Editoren wie VS Code für JSON-Konfigurationsdateien mit Kommentaren verwendet wird (z. B. tsconfig.json). Tatsächlich ein Alias für JSON5.
- Komma am Ende
- Ein zusätzliches Komma nach dem letzten Element eines Objekts oder Arrays. In JavaScript erlaubt, aber vom JSON-Standard verboten - der häufigste Syntaxfehler bei LLM-Ausgaben und console.log()-Kopien.
- Markdown-Code-Block
- Ein Code-Snippet, das in drei Backticks (```) eingewickelt ist. LLMs umschließen JSON-Ausgaben oft automatisch mit ```json ... ```; das direkte Einfügen in JSON.parse() schlägt fehl.
- Toleranter Parser
- Ein Parser, der versucht, sich zu erholen und die Analyse fortzusetzen, wenn er auf Syntaxfehler stößt. Die Kern-Engine eines JSON-Reparatur-Tools, unterschiedlich zum strengen JSON.parse.
- SyntaxError
- Die von JavaScript geworfene Syntaxfehler-Ausnahme. Jeder strenge JSON-Parser wirft diese, wenn die Eingabe nicht RFC 8259 entspricht.
- Kanonisches JSON
- JSON, das über parse + stringify neu generiert wurde, mit stabiler Key-Reihenfolge, ohne überflüssige Leerzeichen und 100% kompatibel mit Standard-Parsern. Das endgültige Ausgabeformat eines JSON-Reparatur-Tools.
Häufige JSON-Reparatur-Fehlertypen mit Beispielen
| Kategorie | Vorher | Nachher | Reparaturmethode |
|---|---|---|---|
| Komma am Ende | { "a": 1, } | { "a": 1 } | Komma nach dem letzten Element entfernen |
| Einfache Anführungszeichen | { 'a': 1 } | { "a": 1 } | Alle einfachen Anführungszeichen durch doppelte ersetzen |
| Keys ohne Anführungszeichen | { a: 1 } | { "a": 1 } | Doppelte Anführungszeichen um den Key ergänzen |
| Zeilenkommentare | { // Kommentar
"a": 1 } | { "a": 1 } | // Zeilenkommentare entfernen |
| Blockkommentare | { /* Block */ "a": 1 } | { "a": 1 } | /* */ Blockkommentare entfernen |
| Markdown-Wrapper | ```json
{ "a": 1 }
``` | { "a": 1 } | ```json und ``` Wrapper entfernen |
| Nicht geschlossene Zeichenkette | { "a": "hallo } | { "a": "hallo" } | Fehlendes schließendes Anführungszeichen ergänzen |
| Fehlende Klammer | { "a": 1 | { "a": 1 } | Stack-Matching zum Hinzufügen fehlender Klammern |
JSON reparieren vs JSON formatieren vs JSON Schema Validierung
| Tool | Was es löst | Eingabeanforderung | Fehlermodus |
|---|---|---|---|
| JSON reparieren | Syntaxfehler-JSON in gültiges JSON umwandeln | Tolerant, akzeptiert nicht standardmäßiges JSON | Fehler, wenn zu kaputt zum Erraten der Struktur |
| JSON formatieren | Gültiges JSON neu formatieren | Muss bereits gültiges JSON sein | SyntaxError direkt geworfen |
| JSON komprimieren | Leerzeichen entfernen, Größe reduzieren | Muss bereits gültiges JSON sein | SyntaxError direkt geworfen |
| JSON Schema Validierung | Feldtypen/-werte vs Geschäftsregeln prüfen | Muss bereits gültiges JSON sein | Listet jedes regelverletzende Feld auf |
| JSON Merge / Sort | Multi-Source-Merge / Key-Sortierung | Muss bereits gültiges JSON sein | SyntaxError direkt geworfen |
Authoritative References
- JSON-Komprimierung
- CSV zu JSON
- JSON zu CSV
- JSON Diff
- JSON Escape / Unescape
- JSON Flatten
- JSON-Formatierung
- JSON-Generator
- JSONPath Online-Abfrage
- JSON zusammenführen
- JSON reparieren
- JSON Schema Validator
- JSON sortieren
- JSON Stringify
- JSON zu HTML-Tabelle
- JSON zu Java
- JSON zu Markdown
- JSON in SQL umwandeln
- JSON zu TOML
- JSON zu TypeScript
- XML zu JSON
- JSON zu XML
- YAML zu JSON
- JSON zu YAML
- JSON zu Python
- JSON zu Go
- JSON zu Rust
- JSON zu Swift
- JSON zu C#
- JSON zu C++
- JSON zu PHP