ファイルを渡す
.jsonlまたは.ndjson ファイルを選ぶか、ここにドロップします。内容を貼り付けても構いません。
.jsonl / .ndjson ファイルを選ぶか、JSON Lines のテキストを貼り付けると、空でない行がそれぞれ 1 件のレコードとして解析されます。成功したレコードは行番号・バイトオフセット・JSON の型つきで一覧になり、失敗した行はエラー表にエラーコード・行・列・バイトオフセットとともに載ります。1 行が壊れていても、残りの行はそのまま読み込まれます。キー一覧には、オブジェクトのレコードに現れたすべてのキーが、3 階層までのドット区切りパス、出現数、欠けている件数、値の型、初めて現れた行とともに並びます。一部のレコードにしかないキーや型が揺れるキーには例となる行番号が付き、最も多い形と異なるレコードの件数も表示されます。お知らせ表には空行、単独の CR 区切り、重複キー(最後の値を採用)、JavaScript の倍精度で表すと元の表記と変わる数値が記録されます。必要なら JSON 配列や CSV に変換でき、変換レポートが先に示され、失敗行は変換を止めるか、明示的に選んだ場合だけ除外して件数と行番号(先頭 1,000 件まで)を示します。
またはファイルをここにドロップ
.jsonlまたは.ndjson ファイルを選ぶか、ここにドロップします。内容を貼り付けても構いません。
ファイルはこのブラウザ内で読み込んで解析します。サーバーには送りません。
出てきた内容を確かめてから、コピーやダウンロードに進みます。
ファイルがどう扱われるか気になりますか? プライバシーについて読む →
見られます。このページにファイルを置くか、テキストを貼り付けるだけです。.jsonl と .ndjson のどちらも、空でない行が 1 件ずつレコードとして解析され、行番号・バイトオフセット・型・先頭 200 文字のプレビューが先頭 2,000 件まで表に並びます。エラー表、お知らせ表、キー一覧、元のテキストも同じ画面で確認でき、登録やインストールは不要です。
送られません。読み込みも解析も、開いているタブの中だけで行われます。JSON 配列や CSV への変換も同じタブ内で作られ、結果はテキストとして渡されるので、コピーや保存はご自身で行います。
Safari や Chrome でこのページを開き、.jsonl ファイルを選べば開けます。macOS には .jsonl の標準アプリがなく、テキストエディットで開いても文字が並ぶだけで、どの行が JSON として壊れているか、どのキーが一部のレコードに欠けているかは分かりません。Windows、Linux、スマートフォンのブラウザでも使い方は同じです。
エラー表に、失敗した行ごとの行番号・列・バイトオフセットが出ます。JSONL_PARSE_ERROR はその行が完結した JSON 値ではないという意味で、オブジェクトの途中切れ、カンマや引用符の抜け、シングルクォート、末尾の余分なカンマ、1 件を複数行に整形したものなどが原因です。ほかの行は影響を受けません。列は UTF-16 単位で数えるため、絵文字は 2 列と数えます。値のあとに余分な文字が続く場合は JSONL_TRAILING_CONTENT になります。
このツールは UTF-8 だけを受け付けるため、Shift_JIS の日本語はエラーになります。日本語を含む行は JSONL_ENCODING_ERROR として行番号とバイトオフセットつきで報告され、英数字だけの行は通常どおり読み込まれます。置換文字で無理に表示することはしません。エディタで UTF-8 として保存し直してから開いてください。先頭の UTF-8 BOM は取り除いて概要に記録し、UTF-16・UTF-32 の BOM で始まる場合は JSONL_UNSUPPORTED_ENCODING になります。
ファイルサイズの上限は 25,000,000 バイト(約 25 MB)、1 行は 4,194,304 バイトまでです。全体の上限を超えるとバイト数だけを見て読み込み前に JSONL_TOO_LARGE で止まり、長すぎる 1 行は JSONL_LINE_TOO_LONG として報告され、ほかの行は解析されます。入れ子は 128 階層まで。エラーは 500 件まで表示して残りは件数のみ、レコード表は先頭 2,000 件、ソース表示は 500,000 文字までです。
変わりません。変換では倍精度の値ではなく元の表記が書き出されます。9007199254740993、1e400、-0 のように元の表記と倍精度の表示が異なる数値は、行と列つきでお知らせ表に記録されます。値そのものが変わってしまう数値は「精度が落ちる数値」として別に数えられ警告が出るので、一般的な JavaScript で読んだときにどの ID が壊れるか確認できます。
表示するだけなら危険は小さいですが、このツールはウイルスを調べません。中身はデータとして解析するだけで実行はしませんが、認証情報や個人情報の検出もせず、安全かどうかの判定も出しません。注意が要るのは CSV 出力で、=、+、-、@ で始まる文字列はそのまま書き出されるため、Excel などで開くと数式として動く可能性があります。
ネストしたオブジェクトや配列は 1 セルにコンパクトな JSON として入り、null は引用符なしの null になります。列はトップレベルのキーを初出順に並べたもので、キーがないセルは空欄、空文字列と文字列の「null」は引用符で囲んで区別します。カンマ・二重引用符・CR・LF を含むフィールドは引用符で囲み、中の引用符は二重にします。改行は CRLF。失敗行やオブジェクト以外のレコードがあると既定では変換せず、除外を選ぶと除外件数と先頭 1,000 件までの行番号がレポートに並びます。上限は 10,000,000 セルです。
消えません。既定では 1 行でも失敗があれば JSONL_CONVERSION_BLOCKED で止まります。失敗行の除外を明示的に選んだときだけ配列が作られ、変換レポートには除外した行の総数と、先頭 1,000 件までの行番号が示されます。各レコードは元の行のテキストを元の順序で使うので、数値の書き方や重複キーもファイルどおりです。保存名は元のファイル名の拡張子を .json にしたもので、出力は 64,000,000 文字までです。
JSON は通常ファイル全体で 1 つの値、JSONL は 1 行に 1 つの JSON 値です。そのため JSONL は追記や 1 行ずつの読み込みに向き、ログやデータの書き出しによく使われます。NDJSON はほぼ同じ形式の別名で、このツールは .jsonl と .ndjson の両方を開けます。整形済みの JSON を貼るとほぼ全行がエラーになり、1 行に圧縮した JSON は 1 件のレコードとして読まれます。
言えません。エラーがないのは、空でない各行が JSON として構文的に正しいという意味だけです。必須項目や値の妥当性、スキーマは確認していません。キー一覧と「最も多い形と異なるレコード」は解析できたレコードについての観察で、失敗行と空行の件数が常に並んで表示されます。一部に欠けたキーや型が揺れるキーは確認用に示すだけで無効とは判定せず、重複キー・単独 CR・精度落ちもお知らせとして載ります。