JSON-verktygsguide: Konvertera dokument och data till JSON och tillbaka
Guiden förklarar hur JSON-verktygen läser och skriver filer, dokumentformatet och vilket verktyg du ska välja för varje uppgift.
Varför JSON
JSON är det dataformat som program, webbtjänster och AI-modeller läser lättast: objekt med namngivna fält, listor, tal, text, true, false och null, inget annat. Dokument och kalkylblad lagras inte på det sättet. Verktygen i den här familjen bryggar över klyftan i båda riktningarna: de gör PDF-filer, Word-filer, kalkylblad, CSV, YAML och XML till JSON, och de gör JSON tillbaka till filer som människor läser, som PDF, Word, Excel, CSV och HTML.
Varje verktyg körs på våra servrar över en säker anslutning och raderar den uppladdade filen inom 60 minuter. Textinmatning kan klistras in direkt istället för att laddas upp.
Vilket verktyg för vilken uppgift
| Du har | Du vill ha | Använd |
|---|---|---|
| En PDF | Text, tabeller och metadata som data | PDF till JSON |
| Ett Word-dokument | Rubriker, stycken, listor och tabeller som data | Word till JSON |
| En Excel-arbetsbok | Poster, rader eller kolumner | Excel till JSON |
| En CSV- eller TSV-fil | En JSON-array med typade värden | CSV till JSON |
| En YAML-fil | Samma data som JSON | YAML till JSON |
| En XML-fil | Objekt, attribut och arrayer | XML till JSON |
| JSON | En PDF att läsa eller skriva ut | JSON till PDF |
| JSON | En Excel-arbetsbok | JSON till Excel |
| JSON | En CSV-fil | JSON till CSV |
| JSON | Ett redigerbart Word-dokument | JSON till Word |
| JSON | En webbsida | JSON till HTML |
| JSON | YAML för en konfigurationsfil | JSON till YAML |
| JSON | XML för ett annat system | JSON till XML |
| JSON som är rörig eller ogiltig | Ren, giltig JSON | JSON-formaterare |
| Två JSON-filer | En lista över vad som ändrats | Jämför JSON |
Markdown har sitt eget par: Markdown till JSON exporterar ett dokumentträd och JSON till Markdown gör JSON till en Markdown-översikt eller tabell.
Dokumentformatet
PDF till JSON och Word till JSON skriver samma form, så en enda kodbit hanterar båda. Toppnivån har alltid dessa fält:
{
"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": []}
}
Fälten betyder följande:
- source: vad filen var, med den metadata den bar (titel, författare, ämne, nyckelord, skapande- och ändringsdatum, sidantal). Word-filer lägger till ord-, tabell- och bildantal.
- pages: en post per PDF-sida med dess storlek i punkter, dess rotation, ett ordantal och dess text. Word-filer har inga sidor, eftersom Word bara lägger ut sidor när det skriver ut.
- blocks: dokumentet i läsordning. Typerna är heading (med nivå 1 till 6), paragraph (med ett valfritt stilnamn från Word), list (ordnad eller inte, objekt med en nästlingsnivå), table (rubrik plus typade rader), code, blockquote, rule och image.
- tables: för PDF-filer, varje upptäckt tabell med sidan den hittades på och, för en tabell som fortsätter, sidan den slutar på. Celler som ser ut som tal är tal.
- form_fields: finns endast när PDF:en har ett formulär. Varje fält har sitt namn, sin typ (text, val, knapp eller signatur) och nuvarande värde.
- extraction: vilken omvandlare som körde, läget du valde, om OCR behövdes, och eventuella varningar, till exempel en tabell som inte kunde upptäckas.
Version 1 av det här formatet vinner bara nya fält, befintliga fält behåller sina namn och betydelse.
Tabelldata och nästling
CSV och Excel är platta, JSON är det inte. När JSON går till CSV eller Excel plattas nästlade objekt ut till punktade kolumnnamn och arrayer till indexerade sådana, så en orderpost med ett kundobjekt och en artikelarray blir kolumner som customer.name, items[0].sku och items[1].sku. När CSV eller Excel kommer tillbaka till JSON byggs rubriker skrivna på det sättet om till nästlade objekt och arrayer. En rubrik med en vanlig punkt i sig, till exempel ett versionsnummer eller en förkortning, lämnas orörd.
Värden typas på vägen in: tal blir tal, true och false blir booleaner, en tom cell blir null, och allt annat förblir en textsträng. Datum som kommer från Excel skrivs som ISO 8601-strängar, eftersom JSON saknar en datumtyp. Växla alternativet för värdetyper till text när identifierare med inledande nollor måste förbli exakt som de skrevs.
Validering och reparation
Varje JSON-verktyg validerar sin indata på samma sätt. En ogiltig fil avvisas med rad och kolumn för det första misstaget, och ett kort utdrag av den raden. JSON-formateraren kan också reparera de misstag människor klistrar in oftast: kommentarer, avslutande kommatecken, strängar med enkla citattecken, ociterade nycklar, versaliserade True, False och None, NaN och Infinity, samt kodstängsel runt texten. När en reparation tillämpats talar resultatet om det, så att ingenting tyst ändras bakom din rygg.
Sekretess
Uppladdade filer och inklistrad text behandlas på våra servrar och raderas inom 60 minuter, se sekretessguiden för detaljerna. Ingenting lagras utöver den tiden och ingenting används för något annat ändamål.