JSON入力

C出力

JSONをCとは?

CにはネイティブJSON型がありません。json-cやcJSONなどのライブラリが実行時にJSONをパースします。このツールはJSONからC structを生成し、パースしたデータを型付き構造にマッピングできます。

変換はブラウザで実行されます。設定でstruct名を設定してください。サーバーには送信されません。C++にはJSONをC++を使用してください。

使い方

1

JSONを貼り付けまたはアップロード

JSONを貼り付けるかファイルをアップロードしてください。設定でstruct名を設定してください。無効なJSONの場合は先にJSONバリデーターで構文を確認してください。

2

C出力を確認

右パネルに生成されたC structが表示されます。cJSONやjson-cでJSONをパースし、これらのstructに値を埋めてください。

3

コピーまたはダウンロード

<strong>コピー</strong>または<strong>ダウンロード</strong>でコードを取得してください。先にJSONをフォーマットするにはJSONフォーマッターを、検証にはJSONバリデーターを使用してください。

JSONをCの例

JSONオブジェクトからC structを生成する例です。

例:加入者レコード

JSON入力:

入力

生成されたC出力:

出力

JSONをCが役立つ場面

組み込みシステム、ファームウェア、レガシーCコードでREST APIや設定ファイルを消費する際、JSON用のstruct定義が必要です。

よくある質問

C用のJSONライブラリは?

cJSONは軽量で広く使われています。json-cも選択肢です。

文字列と配列はどう扱う?

文字列はchar*や固定バッファにマッピング。配列はポインタや固定サイズ配列に。structを埋める際にメモリ管理が必要です。

データはプライベート?

はい。生成はブラウザで実行されます。

組み込みシステムで使える?

はい。cJSONは組み込み用途向けに設計されています。生成されたstructは純粋なCです。

ネストオブジェクトとポインタ?

ネストJSONオブジェクトはネストstructまたはstructへのポインタになります。構造はジェネレーターが生成し、割り当て戦略はユーザーが決定します。

関連ツール

cJSONjson-cJSON仕様を参照。