JSON入力

C++出力

JSONをC++とは?

C++にはネイティブJSONサポートがありません。nlohmann/jsonやRapidJSONなどのライブラリがパースを処理します。このツールはJSONからC++ structとクラスを生成します。

変換はブラウザで実行されます。設定でstruct名とオプションでnamespaceを設定してください。サーバーには送信されません。純粋なCにはJSONをCを使用してください。

使い方

1

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

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

2

C++出力を確認

右パネルに生成されたC++ structが表示されます。nlohmann/jsonやRapidJSONのincludeとパースロジックを追加してください。

3

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

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

JSONをC++の例

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

例:加入者レコード

JSON入力:

入力

生成されたC++出力:

出力

JSONをC++が役立つ場面

C++アプリ、ゲームエンジン、組み込みシステムでREST APIや設定ファイルを消費する際、型付き構造が必要です。

よくある質問

どのJSONライブラリを使う?

nlohmann/jsonはヘッダーのみで統合が簡単です。RapidJSONは大きなペイロードで高速です。

ネストオブジェクトはサポート?

はい。ネストJSONオブジェクトはネストstructに。配列はstd::vectorなどになります。

データはプライベート?

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

C++11かC++17?

生成されたコードは標準C++機能を使用します。std::vectorとstd::stringはC++11で動作します。

QtやUnrealで使える?

はい。生成されたstructは純粋なC++です。QtにはQJsonDocument、Unrealには独自のJSON処理があります。

関連ツール

nlohmann/jsonRapidJSONJSON仕様を参照。