JSON-tools gids: documenten en gegevens omzetten naar JSON en terug
Deze gids legt uit hoe de JSON-tools bestanden lezen en schrijven, het documentformaat van PDF naar JSON en Word naar JSON, en welke tool u voor elke taak gebruikt.
Waarom JSON
JSON is het gegevensformaat dat programma's, webservices en AI-modellen het gemakkelijkst lezen: objecten met benoemde velden, lijsten, getallen, tekst, true, false en null, niets anders. Documenten en spreadsheets worden niet op die manier opgeslagen. De tools in deze familie overbruggen het verschil in beide richtingen: ze zetten PDF's, Word-bestanden, spreadsheets, CSV, YAML en XML om naar JSON, en ze zetten JSON weer om naar bestanden die mensen lezen, zoals PDF, Word, Excel, CSV en HTML.
Elke tool draait op onze servers via een beveiligde verbinding en verwijdert het geüploade bestand binnen 60 minuten. Tekstinvoer kan direct worden geplakt in plaats van geüpload.
Welke tool voor welke taak
| U hebt | U wilt | Gebruik |
|---|---|---|
| Een PDF | Tekst, tabellen en metadata als gegevens | PDF naar JSON |
| Een Word-document | Koppen, alinea's, lijsten en tabellen als gegevens | Word naar JSON |
| Een Excel-werkmap | Records, rijen of kolommen | Excel naar JSON |
| Een CSV- of TSV-bestand | Een JSON-array met getypeerde waarden | CSV naar JSON |
| Een YAML-bestand | Dezelfde gegevens als JSON | YAML naar JSON |
| Een XML-bestand | Objecten, attributen en arrays | XML naar JSON |
| JSON | Een PDF om te lezen of af te drukken | JSON naar PDF |
| JSON | Een Excel-werkmap | JSON naar Excel |
| JSON | Een CSV-bestand | JSON naar CSV |
| JSON | Een bewerkbaar Word-document | JSON naar Word |
| JSON | Een webpagina | JSON naar HTML |
| JSON | YAML voor een configuratiebestand | JSON naar YAML |
| JSON | XML voor een ander systeem | JSON naar XML |
| JSON die rommelig of ongeldig is | Schone, geldige JSON | JSON-formatter |
| Twee JSON-bestanden | Een lijst met wat er is veranderd | JSON vergelijken |
Markdown heeft zijn eigen paar: Markdown naar JSON exporteert een documentstructuur en JSON naar Markdown zet JSON om in een Markdown-overzicht of -tabel.
Het documentformaat
PDF naar JSON en Word naar JSON schrijven dezelfde vorm, zodat één stuk code beide verwerkt. Het hoogste niveau heeft altijd deze velden:
{
"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": []}
}
De velden betekenen het volgende:
- source: wat het bestand was, met de metadata die het bevatte (titel, auteur, onderwerp, trefwoorden, aanmaak- en wijzigingsdatum, aantal pagina's). Word-bestanden voegen het aantal woorden, tabellen en afbeeldingen toe.
- pages: één item per PDF-pagina met de afmetingen in punten, de rotatie, een woordaantal en de tekst. Word-bestanden hebben geen pagina's, omdat Word pagina's alleen indeelt bij het afdrukken.
- blocks: het document in leesvolgorde. Types zijn heading (met niveau 1 tot 6), paragraph (met een optionele stijlnaam uit Word), list (geordend of niet, items met een nestingniveau), table (koprij plus getypeerde rijen), code, blockquote, rule en image.
- tables: voor PDF's, elke gedetecteerde tabel met de pagina waarop deze is gevonden en, voor een tabel die doorloopt, de pagina waarop deze eindigt. Cellen die op getallen lijken, zijn getallen.
- form_fields: alleen aanwezig wanneer de PDF een formulier heeft. Elk veld heeft zijn naam, type (text, choice, button of signature) en huidige waarde.
- extraction: welke converter is gebruikt, de gekozen modus, of OCR nodig was, en eventuele waarschuwingen, zoals een tabel die niet kon worden gedetecteerd.
Versie 1 van dit formaat krijgt alleen nieuwe velden; bestaande velden behouden hun naam en betekenis.
Tabulaire gegevens en nesting
CSV en Excel zijn plat, JSON niet. Wanneer JSON naar CSV of Excel gaat, worden geneste objecten platgeslagen tot kolomnamen met punten en arrays tot kolomnamen met een index, zodat een bestelrecord met een klantobject en een items-array kolommen wordt zoals customer.name, items[0].sku en items[1].sku. Wanneer CSV of Excel teruggaat naar JSON, worden koppen die op die manier zijn geschreven, herbouwd tot geneste objecten en arrays. Een kop met een gewone punt erin, zoals een versienummer of een afkorting, wordt met rust gelaten.
Waarden worden getypeerd bij binnenkomst: getallen worden getallen, true en false worden booleans, een lege cel wordt null, en al het andere blijft een tekststring. Datums uit Excel worden geschreven als ISO 8601-tekenreeksen, omdat JSON geen datumtype heeft. Zet de optie waardetypen op tekst wanneer identificatiecodes met voorloopnullen exact zo geschreven moeten blijven.
Validatie en herstel
Elke JSON-tool valideert de invoer op dezelfde manier. Een ongeldig bestand wordt geweigerd met de regel en kolom van de eerste fout, en een kort fragment van die regel. De JSON-formatter kan ook de fouten herstellen die mensen het vaakst plakken: commentaar, komma's aan het einde, tekst tussen enkele aanhalingstekens, sleutels zonder aanhalingstekens, hoofdletters bij True, False en None, NaN en Infinity, en codeblokken rond de tekst. Wanneer een herstel is toegepast, laat het resultaat dit weten, zodat er niets ongemerkt achter uw rug verandert.
Privacy
Geüploade bestanden en geplakte tekst worden verwerkt op onze servers en binnen 60 minuten verwijderd; zie de privacygids voor de details. Niets wordt langer bewaard dan die tijd en niets wordt voor enig ander doel gebruikt.