JSON 工具指南:在文件、資料與 JSON 之間互相轉換
本指南說明 JSON 工具如何讀取與寫入檔案、PDF 轉 JSON 與 Word 轉 JSON 所產生的文件格式,以及每種工作該使用哪個工具。
為什麼選擇 JSON
JSON 是程式、網路服務與 AI 模型最容易讀取的資料格式:具名欄位的物件、清單、數字、文字、true、false 與 null,僅此而已。文件與試算表並不是以這種方式儲存的。此系列工具會在兩個方向上填補這個缺口:它們將 PDF、Word 檔案、試算表、CSV、YAML 與 XML 轉換為 JSON,也能將 JSON 轉換回人可閱讀的檔案,例如 PDF、Word、Excel、CSV 與 HTML。
每個工具都在我們的伺服器上透過安全連線執行,並在 60 分鐘內刪除已上傳的檔案。文字輸入可直接貼上,不需要上傳檔案。
依需求選擇工具
| 您擁有的內容 | 您想要的結果 | 請使用 |
|---|---|---|
| 一份 PDF | 以資料形式呈現的文字、表格與中繼資料 | PDF 轉 JSON |
| 一份 Word 文件 | 以資料形式呈現的標題、段落、清單與表格 | Word 轉 JSON |
| 一份 Excel 工作簿 | 記錄、列或欄 | Excel 轉 JSON |
| 一份 CSV 或 TSV 檔案 | 具型別值的 JSON 陣列 | CSV 轉 JSON |
| 一份 YAML 檔案 | 相同資料的 JSON 版本 | YAML 轉 JSON |
| 一份 XML 檔案 | 物件、屬性與陣列 | XML 轉 JSON |
| JSON | 可供閱讀或列印的 PDF | JSON 轉 PDF |
| JSON | 一份 Excel 工作簿 | JSON 轉 Excel |
| JSON | 一份 CSV 檔案 | JSON 轉 CSV |
| JSON | 一份可編輯的 Word 文件 | JSON 轉 Word |
| JSON | 一個網頁 | JSON 轉 HTML |
| JSON | 用於設定檔的 YAML | JSON 轉 YAML |
| JSON | 供其他系統使用的 XML | JSON 轉 XML |
| 雜亂或無效的 JSON | 乾淨、有效的 JSON | JSON 格式化工具 |
| 兩份 JSON 檔案 | 一份變更清單 | 比較 JSON |
Markdown 有自己的一對工具:Markdown 轉 JSON 可匯出文件樹,JSON 轉 Markdown 則能將 JSON 轉為 Markdown 大綱或表格。
文件格式
PDF 轉 JSON 與 Word 轉 JSON 會寫出相同的形狀,因此同一段程式碼可以同時處理兩者。最上層永遠包含以下欄位:
{
"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": []}
}
各欄位的意義如下:
- source:檔案原本的類型,以及它所帶有的中繼資料(標題、作者、主旨、關鍵字、建立與修改日期、頁數)。Word 檔案還會加上字數、表格數與圖片數。
- pages:每個 PDF 頁面各一個項目,包含其以點為單位的尺寸、旋轉角度、字數與文字內容。Word 檔案沒有 pages,因為 Word 只有在列印時才會排版分頁。
- blocks:依閱讀順序排列的文件內容。型別包括 heading(層級 1 至 6)、paragraph(可附帶來自 Word 的選用樣式名稱)、list(有序或無序,項目附帶巢狀層級)、table(標題列加上型別化的資料列)、code、blockquote、rule 與 image。
- tables:對 PDF 而言,每個偵測到的表格會標明所在頁面,若表格延續多頁,也會標明結束頁面。看起來像數字的儲存格會以數字呈現。
- form_fields:只有當 PDF 含有表單時才會出現。每個欄位都有其名稱、型別(text、choice、button 或 signature)與目前的值。
- extraction:說明使用了哪個轉換器、您選擇的模式、是否需要 OCR,以及任何警告,例如無法偵測到的表格。
此格式的第 1 版只會新增欄位;既有欄位的名稱與意義永遠不會改變。
表格資料與巢狀結構
CSV 與 Excel 是扁平的,JSON 則不是。當 JSON 轉為 CSV 或 Excel 時,巢狀物件會展平為以點分隔的欄位名稱,陣列則展平為帶索引的欄位,因此一筆包含客戶物件與商品陣列的訂單記錄,會變成如 customer.name、items[0].sku 與 items[1].sku 之類的欄位。當 CSV 或 Excel 轉回 JSON 時,以這種方式撰寫的標題會被重建為巢狀物件與陣列。若標題中含有一般的點,例如版本號或縮寫,則會維持原樣不變。
值在輸入時就會被賦予型別:數字變成數字,true 與 false 變成布林值,空白儲存格變成 null,其餘則維持字串。從 Excel 匯出的日期會寫成 ISO 8601 字串,因為 JSON 沒有日期型別。當帶有前導零的識別碼必須完整保留原樣時,請將值型別選項切換為文字。
驗證與修復
每個 JSON 工具都以相同方式驗證輸入內容。無效的檔案會被拒絕,並附上第一個錯誤所在的行號、欄號,以及該行的簡短摘錄。JSON 格式化工具 還能修復人們最常貼上的錯誤:註解、多餘的逗號、單引號字串、未加引號的鍵、大寫的 True、False 與 None、NaN 與 Infinity,以及包住文字的程式碼區塊標記。當套用了修復時,結果會告知您,確保不會有任何行為在您不知情的情況下悄悄改變。
隱私
上傳的檔案與貼上的文字會在我們的伺服器上處理,並在 60 分鐘內刪除;詳情請參閱隱私指南。超過這段時間後,任何內容都不會被保留,也不會用於任何其他目的。