JSON-Leitfaden: Dokumente und Daten in JSON umwandeln und zurück
Dieser Leitfaden erklärt, wie die JSON-Werkzeuge Dateien lesen und schreiben, das Dokumentformat von PDF und Word in JSON und welches Werkzeug wofür passt.
Warum JSON
JSON ist das Datenformat, das Programme, Webdienste und KI-Modelle am leichtesten lesen: Objekte mit benannten Feldern, Listen, Zahlen, Text, true, false und null, nichts weiter. Dokumente und Tabellenkalkulationen werden nicht so gespeichert. Die Werkzeuge dieser Familie überbrücken die Lücke in beide Richtungen: Sie wandeln PDFs, Word-Dateien, Tabellenkalkulationen, CSV, YAML und XML in JSON um, und sie wandeln JSON zurück in Dateien, die Menschen lesen, etwa PDF, Word, Excel, CSV und HTML.
Jedes Werkzeug läuft auf unseren Servern über eine sichere Verbindung und löscht die hochgeladene Datei innerhalb von 60 Minuten. Texteingaben können direkt eingefügt werden, statt hochgeladen zu werden.
Welches Werkzeug für welche Aufgabe
| Sie haben | Sie möchten | Verwenden Sie |
|---|---|---|
| Ein PDF | Text, Tabellen und Metadaten als Daten | PDF in JSON |
| Ein Word-Dokument | Überschriften, Absätze, Listen und Tabellen als Daten | Word in JSON |
| Eine Excel-Arbeitsmappe | Datensätze, Zeilen oder Spalten | Excel in JSON |
| Eine CSV- oder TSV-Datei | Ein JSON-Array mit typisierten Werten | CSV in JSON |
| Eine YAML-Datei | Dieselben Daten als JSON | YAML in JSON |
| Eine XML-Datei | Objekte, Attribute und Arrays | XML in JSON |
| JSON | Ein PDF zum Lesen oder Drucken | JSON in PDF |
| JSON | Eine Excel-Arbeitsmappe | JSON in Excel |
| JSON | Eine CSV-Datei | JSON in CSV |
| JSON | Ein bearbeitbares Word-Dokument | JSON in Word |
| JSON | Eine Webseite | JSON in HTML |
| JSON | YAML für eine Konfigurationsdatei | JSON in YAML |
| JSON | XML für ein anderes System | JSON in XML |
| JSON, das unsauber oder ungültig ist | Sauberes, gültiges JSON | JSON-Formatierer |
| Zwei JSON-Dateien | Eine Liste der Unterschiede | JSON vergleichen |
Markdown hat sein eigenes Paar: Markdown zu JSON exportiert einen Dokumentbaum, und JSON zu Markdown wandelt JSON in eine Markdown-Gliederung oder -Tabelle um.
Das Dokumentformat
PDF in JSON und Word in JSON schreiben dieselbe Form, sodass ein einziger Code beide verarbeitet. Die oberste Ebene enthält immer diese Felder:
{
"format": "acepdfmd-document",
"version": 1,
"source": {"type": "pdf", "filename": "report.pdf", "title": "Q3 Report", "pages": 12},
"pages": [{"number": 1, "width": 612, "height": 792, "words": 380, "text": "..."}],
"blocks": [
{"type": "heading", "level": 1, "text": "Q3 Report"},
{"type": "paragraph", "text": "Revenue grew..."},
{"type": "list", "ordered": false, "items": [{"level": 0, "text": "Europe"}]},
{"type": "table", "header": ["Region", "Q3"], "rows": [["Europe", 1200.5]]}
],
"tables": [{"index": 1, "page": 3, "rows": [["Region", "Q3"], ["Europe", 1200.5]]}],
"form_fields": [{"name": "email", "type": "text", "value": "[email protected]"}],
"extraction": {"engine": "pdf_to_markdown/layout", "mode": "structure", "ocr": false, "warnings": []}
}
Die Felder bedeuten Folgendes:
- source: was die Datei war, mit den Metadaten, die sie enthielt (Titel, Autor, Betreff, Schlüsselwörter, Erstellungs- und Änderungsdatum, Seitenzahl). Word-Dateien fügen die Wort-, Tabellen- und Bildanzahl hinzu.
- pages: ein Eintrag pro PDF-Seite mit ihrer Größe in Punkten, ihrer Drehung, einer Wortanzahl und ihrem Text. Word-Dateien haben keine Seiten, da Word Seiten nur beim Drucken anlegt.
- blocks: das Dokument in Lesereihenfolge. Typen sind heading (mit Ebene 1 bis 6), paragraph (mit einem optionalen Formatvorlagennamen aus Word), list (geordnet oder nicht, Elemente mit einer Verschachtelungsebene), table (Kopfzeile plus typisierte Zeilen), code, blockquote, rule und image.
- tables: für PDFs jede erkannte Tabelle mit der Seite, auf der sie gefunden wurde, und, bei einer fortlaufenden Tabelle, der Seite, auf der sie endet. Zellen, die wie Zahlen aussehen, sind Zahlen.
- form_fields: nur vorhanden, wenn das PDF ein Formular enthält. Jedes Feld hat seinen Namen, Typ (text, choice, button oder signature) und aktuellen Wert.
- extraction: welcher Konverter lief, welcher Modus gewählt wurde, ob OCR nötig war, und etwaige Warnungen, etwa eine Tabelle, die nicht erkannt werden konnte.
Version 1 dieses Formats gewinnt nur Felder hinzu; bestehende Felder behalten ihre Namen und Bedeutung.
Tabellarische Daten und Verschachtelung
CSV und Excel sind flach, JSON ist es nicht. Wenn JSON zu CSV oder Excel wird, werden verschachtelte Objekte zu Spaltennamen mit Punktnotation und Arrays zu durchnummerierten Spalten abgeflacht, sodass ein Bestellungsdatensatz mit einem customer-Objekt und einem items-Array zu Spalten wie customer.name, items[0].sku und items[1].sku wird. Wenn CSV oder Excel zurück zu JSON wird, werden auf diese Weise geschriebene Kopfzeilen zu verschachtelten Objekten und Arrays zusammengesetzt. Eine Kopfzeile mit einem gewöhnlichen Punkt, etwa eine Versionsnummer oder eine Abkürzung, wird unverändert gelassen.
Werte werden beim Einlesen typisiert: Zahlen werden zu Zahlen, true und false werden zu Booleans, eine leere Zelle wird zu null, und alles andere bleibt eine Zeichenkette. Datumswerte aus Excel werden als ISO-8601-Zeichenketten geschrieben, da JSON keinen Datentyp für Datumsangaben besitzt. Stellen Sie die Werttypen auf Text um, wenn Kennungen mit führenden Nullen exakt wie geschrieben erhalten bleiben müssen.
Validierung und Reparatur
Jedes JSON-Werkzeug validiert seine Eingabe auf dieselbe Weise. Eine ungültige Datei wird abgelehnt, mit Zeile und Spalte des ersten Fehlers und einem kurzen Ausschnitt dieser Zeile. Der JSON-Formatierer kann außerdem die Fehler reparieren, die am häufigsten eingefügt werden: Kommentare, überflüssige Kommas, einfache Anführungszeichen, unquotierte Schlüssel, großgeschriebenes True, False und None, NaN und Infinity, und Codeblöcke um den Text. Wenn eine Reparatur angewendet wurde, zeigt das Ergebnis dies an, damit sich das Verhalten nicht unbemerkt ändert.
Datenschutz
Hochgeladene Dateien und eingefügter Text werden auf unseren Servern verarbeitet und innerhalb von 60 Minuten gelöscht; Einzelheiten finden Sie im Datenschutz-Leitfaden. Nichts wird über diese Zeit hinaus gespeichert, und nichts wird für einen anderen Zweck verwendet.