JSONL 合併器

將多個 JSONL(JSON Lines)檔案合併為一個檔案。重新排序、去重和驗證行。100% 在瀏覽器端處理,您的資料永遠不會離開瀏覽器。

輸入檔案

將 .jsonl 檔案拖放到這裡,或點擊選擇多個檔案

支援 .jsonl、.ndjson、.json、.txt

合併選項

作者: Jerry Fan更新於 2026年2月

為何 cat file1.jsonl file2.jsonl 可能損毀資料

串接看似是合併 JSONL 最直覺的方法,而只要所有檔案結尾都有換行,它確實可行。但若其中一個檔案缺少結尾換行,該檔案的最後一筆記錄就會與下一個檔案的第一筆記錄黏在一起,形成一行無效資料:

# file1.jsonl 結尾沒有換行:
{"id": 1}
{"id": 2}⏎missing
# file2.jsonl:
{"id": 3}
# cat file1.jsonl file2.jsonl 的輸出:
{"id": 1}
{"id": 2}{"id": 3} ← one broken line: parse error, two records lost

本工具會檢查每個輸入的最後一個位元組,並在合併前補上缺少的換行;無論輸入檔案原本如何儲存,合併後的輸出都會保持有效。若您必須在管線中使用 cat,較安全的寫法是:awk 1 file1.jsonl file2.jsonl(awk 會重新為每一行加上結尾換行)。

如何合併 JSONL 檔案

選擇或拖放多個 JSONL 檔案到上傳區域。每個檔案都完全在瀏覽器中讀取 — 沒有資料會傳送到任何伺服器。檔案可以是 .jsonl、.ndjson、.json 或 .txt 格式。

上傳後,您可以使用上/下箭頭重新排序檔案以控制合併順序。啟用去重功能可根據完整行內容移除重複行,或啟用 JSON 驗證以跳過非有效 JSON 的行。

合併輸出會在預覽面板中顯示前 100 行。下載完整的合併檔案為 .jsonl 檔案,或將其複製到剪貼簿。統計資訊顯示總行數、檔案大小以及已移除的重複項或無效行。

精確的合併語意

順序
檔案會依您加入的順序串接,每個檔案內的記錄順序也會保留。合併只會附加資料;絕不會重新排序、改寫或重新格式化記錄。
邊界修復
任何輸入結尾缺少的換行都會自動補上(請參閱上方範例)。記錄之間的空白行會被移除,因為部分使用端不接受空白行。
去除重複:完全相同的行
選用功能。只有原始行的每個位元組都完全相同,兩筆記錄才會視為重複;{"a":1,"b":2} 與 {"b":2,"a":1} 不會被去除,因為即使 JSON 值相等,鍵的順序仍使兩行有所不同。若要依值去除重複,請先使用格式化工具的鍵排序選項進行正規化。
與分割工具來回轉換
合併正是分割的反向操作:將檔案分割成 N 個分塊,再依序合併,所得結果會與原始檔案逐位元組相同(關閉去除重複時)。這項特性讓「分割 → 平行處理 → 合併」成為安全的管線模式。

什麼是 JSONL 合併?

JSONL 合併是將多個 JSONL(JSON Lines)檔案合併為一個檔案的過程。每個輸入檔案每行包含一個 JSON 物件,合併器將所有檔案的所有行串接到一個輸出檔案中,同時保留您指定的順序。

在處理分散在多個檔案中的資料集時,這是必不可少的 — 例如訓練資料分片、每日日誌匯出或分塊的 API 回應。合併將它們整合為單一檔案,便於處理、分析或上傳到期望單一 JSONL 輸入的平台。

常見錯誤與解決方案

跨檔案的重複記錄

合併有重疊的 JSONL 匯出(例如時間戳重疊的每日日誌)時,可能出現重複。啟用「移除重複項」選項可根據完整行內容自動去重。對於語義去重(相同資料但格式不同),請先使用 JSONL 格式化工具統一格式。

檔案間編碼不一致

來自不同來源的檔案可能使用不同的字元編碼(UTF-8、UTF-8 with BOM、Windows-1252)。這可能導致某些檔案的第一行 JSON 解析失敗。合併前請確保所有檔案以 UTF-8 無 BOM 格式儲存。

跨檔案的 Schema 不一致

來自不同來源的 JSONL 檔案可能有不同的鍵結構。雖然合併器不管 Schema 差異都會合併檔案,但下游工具可能要求一致的 Schema。使用 JSONL 驗證器驗證合併輸出,確保每行都是有效的 JSON。

常見使用場景

資料集整合

將多個 JSONL 訓練資料分片合併為一個檔案,用於上傳到 OpenAI fine-tuning、Hugging Face 或其他 ML 平台。

資料管線組裝

將平行資料處理管線的輸出檔案合併為一個 JSONL 檔案,供下游使用。

ML 訓練資料準備

將來自多個來源的提示-完成配對整合為一個 JSONL 檔案,準備好進行模型 fine-tuning。

日誌檔案彙整

將每日或每小時的 JSONL 日誌匯出合併為一個檔案,用於全面的日誌分析和搜尋。

團隊協作

合併不同團隊成員貢獻的 JSONL 資料檔案,形成統一的資料集以供共同分析。

分析資料合併

合併來自多個服務或不同時間段的 JSONL 事件資料,用於統一分析和報表。

常見問題

這個 JSONL 合併器如何合併檔案?

安全。所有合併都在瀏覽器本機完成。沒有檔案資料會上傳到任何伺服器。您的 JSONL 檔案永遠不會離開您的裝置。

這個 JSONL 合併器可以移除重複行嗎?

沒有硬性限制。您可以新增所需數量的 JSONL 檔案。但由於所有檔案都載入到瀏覽器記憶體中,合併資料量非常大(數百 MB)時,速度可能會因裝置而異。

這個 JSONL 合併器會上傳我的資料嗎?

去重會比較每行的完整修剪後內容。如果兩行完全相同(相同字元、相同順序),第二次出現的行會被移除。這是精確匹配去重 — 具有相同資料但不同鍵順序或空白的行會被視為不同。

可以用這個工具合併 NDJSON 檔案嗎?

可以。上傳後,使用每個檔案旁邊的上下箭頭按鈕重新排序。合併輸出按從上到下的檔案順序進行。

一次可以合併多少個檔案?

空行和純空白行在檔案讀取過程中會被自動過濾掉。它們不會出現在合併輸出中。這遵循 JSONL 規範中空行被忽略的規定。

如何將合併後的 JSONL 檔案再次拆分?

可以。合併器不管 Schema 差異都會合併檔案。每行會原樣保留。如果您需要 Schema 一致性,請在合併前分別驗證或轉換檔案。

合併器是否保留原始檔案順序?

是的。每個檔案內的行保持原始順序。檔案按檔案列表中顯示的順序串接。您可以在合併前調整檔案順序。

可以合併具有不同 Schema 的檔案嗎?

本工具提供視覺化介面,支援拖放上傳、檔案重新排序、去重、JSON 驗證、行數統計和即時預覽。與使用 cat 或 copy 命令手動串接不同,它會自動處理尾部換行和空行等邊界情況。

相關工具與指南