コード整形 / MULTIVERTO

JSON配列をJSON Linesに変換

JSON 配列の各項目を、1行に1つの JSON 値として書き出します。

変換ツール入力内容はこのブラウザ内にとどまり、変換のために送信されません。

ファイルはブラウザー内にとどまります。
ツールを連結

前の結果に各テキストツールを適用します。 テキスト変換ワークフロー ↗

このブラウザーには手順の名前とツールの順序だけを保存します。入力内容と結果は保存しません。

01 / 例

例

入力[{"namae":"こんにちは","messeji":"ようこそ"},{"namae":"ようこそ"}]
結果{"namae":"こんにちは","messeji":"ようこそ"} {"namae":"ようこそ"}

02 / ガイド

JSON配列をJSON Linesに変換 — 仕組み

変換の仕組み

JSON 配列の各項目を一つずつ取り出し、コンパクトな JSON 値として 1 行に 1 項目を書き出します。配列中のオブジェクト、数値、文字列などはそれぞれ独立した行になります。

具体的な変換例

この例では入力「[{"namae":"こんにちは","messeji":"ようこそ"},{"namae":"ようこそ"}]」から出力「{"namae":"こんにちは","messeji":"ようこそ"} ⏎ {"namae":"ようこそ"}」が得られます。⏎ は実際の改行を示します。 JSON 配列の各項目を、それぞれ一行の JSON 値として書き出します。改行が記録の境界になるので、出力側のパーサーが JSON Lines を受け付けるか確認してください。区切り方、プロパティ名、値の型を小さな例で比較してから、ファイル全体へ適用します。

フォーマット規則と制限

JSON文字列の中の改行は、バックスラッシュとnによるエスケープとして残るため、レコードの境界にはなりません。出力の各行には完全なJSON値が一つ入ります。値はオブジェクト、配列、数値、文字列、真偽値、またはnullです。ただし、受け取り側のサービスがオブジェクトだけを許す場合もあります。入力のJSON配列は一つのJSON文書です。一方、JSON Linesの出力は各行が別々のJSON値であり、出力全体を単一のJSON値として受け付けるAPIには送れません。大量のデータを書き出す前に、UTF-8の文字エンコーディングと、受け取り側が定める一行ごとのサイズ上限を確認してください。この変換は、配列の各要素を一行ずつ調べたり送信したりする場合に使います。行と行の間にカンマは入りません。入力にはJSON配列が必要です。要素が一つだけでも配列として書き、単独のオブジェクトを入力するとエラーになります。各要素は一行のコンパクトなJSON値として出力されます。文字列内の改行はエスケープされたままなので、レコードを分割しません。空の配列は空のテキストになり、レコードを含むJSON Lines文書として読み戻すことはできません。空のデータストリームを受け取り側がどう扱うか、書き出す前に決めてください。

結果を確認

生成した JSON Lines は空でない各行を個別に解析して検証し、生成した配列は一つの完全な JSON 文書として解析してください。文字列内の改行はエスケープしたままにし、意図しないレコード境界を作らないようにします。下流のサービスが各行にオブジェクトを要求する場合は、その条件を明示的に確認してください。形式そのものはスカラー値も許します。多くの行指向リーダーでは最後の改行も受け付けます。オブジェクト、数値、エスケープ済みの改行を含む文字列を用意します。結果の各行を個別に解析してください。文字列のエスケープによってレコードが分割されてはいけません。元データと結果は見た目が似ていても役割が異なります。上記の方法が定義するのは対応する範囲であり、その形式名のあらゆる拡張ではありません。厳格な受け取り側に渡すなら、多くの記録を変える前に小さな既知の例を試してください。検証に失敗した場合は元の入力と最初に報告されたエラーに戻ります。生成結果だけを編集すると原因が隠れることがあります。

入力から出力への変換過程
JSON 配列
構造を読み込み変換
JSON Lines 出力

ガイドを探す

変換ガイド

ガイドを探す