AZ Tools

JSON to Rust 構造体コンバーター (serde)

開発

JSON オブジェクトや配列を貼り付けると、serde の `Serialize, Deserialize` を derive し、フィールドが Rust 型(String、i64、f64、bool、Vec<...>)にマッピングされた Rust `struct` 定義と、ネストされたオブジェクト用の個別構造体がすぐに得られます。snake_case でないキーには `#[serde(rename = "...")]` 属性が付きます。すべてブラウザ内でローカルに実行され、JSON はアップロードされません。

Rust 構造体

使い方

  1. 入力ボックスに JSON を貼り付けるか入力します。
  2. 必要に応じてルート構造体名を変更します(既定は AutoGenerated)。
  3. 出力ボックスから生成された構造体をコピーし、Cargo.toml に serde を追加します。

よくある質問

数値はどの型になりますか?
整数は i64、小数点を含む数値は f64 になります。u32 や i32 など別の幅が必要な場合は手動で調整してください。
null や空配列はどう扱われますか?
サンプルから型を推論できないため、null は Option<serde_json::Value> に、空配列は Vec<serde_json::Value> になります。
一部のフィールドに serde rename が付くのはなぜですか?
Rust のフィールドは snake_case を使います。JSON キーが異なる場合(例: camelCase)、シリアライズが元のキーと一致するよう #[serde(rename = "...")] 属性が追加されます。
私の JSON はどこかに送信されますか?
いいえ。変換は完全にブラウザ内で行われ、何もアップロードされません。

関連ツール