JSONとは?

JSON(JavaScript Object Notation)は、構造化データの保存と送信に広く使用される軽量なデータ交換形式です。キーと値のペアを使用して、情報をネストされたオブジェクトと配列に整理します。JSONはマシンが解析しやすい形式ですが、その階層構造により、プレーンテキストを想定したツール(スプレッドシート、ログアナライザー、設定ファイル、シンプルなテキストエディタなど)では読み取りや処理が困難になる場合があります。

JSONをプレーンテキストに変換すると、ネストされた構造が「フラット化」され、線形のエントリリストになるため、スキャン、コピー、または他のシステムへのインポートが非常に簡単になります。

ツールの説明

このツールは、JSON構造全体をトラバースしてフラット化することで、JSONデータを人間が読みやすいプレーンテキストに変換します。ネストされたオブジェクトと配列は1行に1つの値に折りたたまれ、各パスはオブジェクトにはドット記法、配列には括弧記法を使用して表現されます。出力に含める内容を選択できます:キーと値のペア全体、値のみ、またはキーのみです。キーと値のペアを出力する場合、キーとその値の間の区切り文字も選択できます。

入力JSON:

{
  "name": "Alice",
  "age": 30,
  "address": {
    "city": "Berlin",
    "zip": "10115"
  },
  "hobbies": ["reading", "cycling"]
}

キーと値のペア出力(区切り文字 : ):

name: Alice
age: 30
address.city: Berlin
address.zip: 10115
hobbies[0]: reading
hobbies[1]: cycling

値のみ出力:

Alice
30
Berlin
10115
reading
cycling

キーのみ出力:

name
age
address.city
address.zip
hobbies[0]
hobbies[1]

機能

  • 深くネストされたJSONオブジェクトと配列を個別の行にフラット化
  • 3つの出力形式:キーと値のペア、値のみ、またはキーのみ
  • キーと値モード用の4つの区切り文字オプション:コロン、等号、ダッシュ、またはタブ
  • ネストされたオブジェクトキーのドット記法(parent.child.grandchild
  • 配列インデックスの括弧記法(items[0]items[1]

動作方法

このツールはJSON構造を再帰的にウォークします。各プリミティブ値(文字列、数値、ブール値、またはnull)について、ルートからその値までの完全なパスを記録します。オブジェクトキーは.で結合され、配列インデックスは[n]として記述されます。収集されたパスと値のペアは、選択された出力モードに従ってフォーマットされ、1行に1つのエントリを持つプレーンテキストドキュメントに結合されます。

ユースケース

  • JSONデータをスプレッドシートにインポート — 値のみを抽出し、JSON構文を手動で削除することなく列に貼り付けます。
  • APIレスポンスのデバッグ — フラットリストのすべてのキーと値をすばやくスキャンして、ツリービューをナビゲートすることなく、欠落または予期しないフィールドを見つけます。
  • 設定またはEnvironmentファイルの生成 — JSON設定オブジェクトを.envファイルまたはINIスタイル設定に適した平坦なキー=値形式に変換します。

オプションの説明

オプション 説明
キーと値のペア 各リーフノードをfull.path: valueとして出力(1行に1つ)
値のみ プリミティブ値のみを出力(1行に1つ)
キーのみ ドット記法の完全なパスのみを出力(1行に1つ)
区切り文字 キーと値モードでキーと値の間に配置される文字(: =-、またはタブ)

制限事項

  • プリミティブなリーフ値(文字列、数値、ブール値、null)のみが個別の行として表示されます。空の配列と空のオブジェクトは出力行を生成しません。
  • このツールは一方向のみで変換します:JSON → テキスト。逆方向に進むには、JSONフォーマッタまたはエディタを使用してください。
  • 非常に大きなJSONファイルは長い出力を生成する可能性があります。事前にデータをフィルタリングまたはページネーションすることを検討してください。