Format Atlas

FORMAT COMPARISON

JSON Lines vs CSV

JSON Linesは1行ごとに独立したJSON値を置くテキスト慣習、CSVは区切り文字で列を並べる表形式です。JSON Linesはレコードごとの異なる構造やネストした値を表しやすく、CSVは同じ列を持つ表データの受け渡しに向きます。

最終確認: 2026-09-27

JSON LinesとCSV、どちらを選ぶ?

同じ列構成の表を表計算ソフトやデータベース間で交換するならCSV、ネストした値やレコード単位のストリーム処理が必要ならJSON Linesを検討します。文字コード、区切り、改行、スキーマ、表計算ソフトの自動変換を受信側と確認してください。

JSON Lines向き

行単位で処理するログや記録・JSONレコードのストリーミング交換

  • データを1行ずつ読み書きする
  • テキスト処理ツールで追記・連結する

CSV向き

表データ交換

  • 単一シートの表をアプリ間で受け渡す用途
  • 書式を必要としない集計前のデータ

基本情報を比較

JSON LinesとCSVの主な違いを確認できます。

項目JSON LinesCSV
拡張子.jsonl、.ndjson.csv
MIME Typeapplication/jsonltext/csv
主な用途行単位で処理するログや記録・JSONレコードのストリーミング交換表データ交換
圧縮none該当なし
開く方法テキストエディタやJSON Lines対応ツールで開きます。1行ずつJSONとして検証すると、どのレコードに構文エラーがあるか確認しやすくなります。表計算ソフトではインポート時に文字コードと区切り文字を指定し、テキストエディタでは実際の値を確認します。先頭ゼロ、日付に見える値、長い数値は自動変換されないか確認し、必要な列を文字列として扱います。
書き出し・変換JSON配列へ変換するときは全行を配列要素にまとめ、JSON Linesへ戻すときは各要素を1行ずつ書き出します。大量データではメモリ使用量に注意します。XLSXからCSVへ書き出すと、通常は選んだ一つのシートの値だけになります。数式、書式、複数シート、グラフは別途保持します。

用途別の選び方

作りたいものや使う場面から選べます。

データを1行ずつ読み書きする

行単位で処理するログや記録・JSONレコードのストリーミング交換

JSON Lines向き

テキスト処理ツールで追記・連結する

行単位で処理するログや記録・JSONレコードのストリーミング交換

JSON Lines向き

単一シートの表をアプリ間で受け渡す用途

表データ交換

CSV向き

書式を必要としない集計前のデータ

表データ交換

CSV向き

確認ポイント 1

JSON Linesは各行に1つのJSON値を格納し、オブジェクトのほか配列・文字列・数値なども表せます。CSVは行とフィールドからなる表で、各列の意味や型は別途合意することが多く、標準CSVに共通の型スキーマはありません。

使い分け

確認ポイント 2

JSONの値はネストしたオブジェクトや配列を含められます。CSVは通常、行ごとに同じ列構成を期待するため、ネスト構造や可変フィールドは独自のエンコードや別スキーマなしには扱いにくくなります。

使い分け

選ぶ理由を詳しく

  • 両方ともテキストで逐次処理できますが、CSVでは引用符・区切り文字・改行を含むフィールドの解析規則が必要です。CSVからJSON Linesへ変換するときはヘッダー、列型、欠損値、空文字、日付、先頭ゼロをどう対応させるか決め、往復後に値を検証します。

詳しく見る

参考資料・仕様