JSONをRustに変換
JSONをRust structにオンライン変換。Rust開発用にSerde互換structを生成。無料、ブラウザで実行—サーバーにデータ送信なし。
JSON入力
Rust出力
JSONをRustとは?
Rustは構造化データにstructを使用します。SerdeでJSONを消費する際、対応するstruct定義が必要です。このツールはJSONからRust structを生成します。
SerdeでSerialize/Deserializeのderiveを有効にしてください。Option Typesでオプショナルフィールドを設定できます。出力はserde_json::from_strとserde_json::to_stringで動作します。
変換は完全にブラウザで実行されます。JSONはサーバーに送信されません。
JSONをRustが役立つ場面
RustアプリでREST APIを消費する際、型付きstructが必要です。サンプルレスポンスを貼り付けるとSerde対応のstructが得られます。
使い方
JSONを貼り付けまたはアップロード
JSONを左のエディタに貼り付けるか、アップロードでファイルを読み込んでください。サンプルで例データを読み込めます。設定パネルでstruct名とオプションを設定してください。
生成されたstructを確認
右パネルに生成されたRust structが表示されます。ネストオブジェクトは別structに。配列は<code>Vec<T></code>になります。無効なJSONの場合は先にJSONフォーマッターまたはJSONバリデーターで修正してください。
コピーまたはダウンロード
コピーまたはダウンロードでコードを取得してください。Cargo.tomlにserdeとserde_jsonを追加してください。
JSONをRustの例
JSONオブジェクトからRust structを生成する例です。
例:加入者レコード
JSON入力:
生成されたRust出力:
JSONをRustが役立つ場面
REST API統合時に必要です。ここに貼り付けるとすぐに使えるSerde互換structが得られます。
2つのJSONをマージするにはJSONマージツールを使用してください。
APIレスポンス、設定ファイル、データエクスポートはJSONが多いです。ここで処理するとRust structを生成できます。
よくある質問
Serdeと手動デシリアライズ?
SerdeはRustのJSON標準です。deriveマクロでSerializeとDeserializeを生成します。Cargo.tomlにserdeとserde_jsonを追加してください。
nullフィールドにOption?
オプショナルJSONフィールドにはOption Typesを有効にしてください。nullableフィールドがOption<T>でラップされます。
データは送信されますか?
いいえ。生成はブラウザで実行されます。
#[serde(rename)]は使えますか?
はい。Rustフィールド名(snake_case)がJSONキー(camelCase)と異なる場合、ジェネレーターが#[serde(rename = "jsonKey")]を追加します。
ネストオブジェクトは?
ネストJSONオブジェクトは別のRust structになります。配列はそのstruct型のVec<T>になります。
関連ツール
Rust JSONはSerdeとserde_jsonを参照。JSONはJSON仕様を参照。