無料XMLからRust構造体ジェネレーターオンライン
ブラウザで即座にXMLからserdeつきRust構造体を生成。
XML入力
Rust出力
XMLをRustに変換とは?
Rustはquick-xmlとserdeでXML解析を提供します。このツールはXML構造からSerde互換のRust構造体を生成します。W3C XML仕様で形式が定義されています。変換はブラウザで実行されます。サーバーには送信されません。
このツールの使い方
XMLを貼り付けまたはアップロード
XMLを貼り付けるか、ファイルをアップロードします。パネルで構造体名、モジュール、Data Class、Nullable型を設定します。
Rust出力を確認
右パネルに生成された構造体が表示されます。quick-xmlとserdeで解析してください。
コピーまたはダウンロード
コピーまたはダウンロードを使用します。JSONをRustに変換するにはJSONをRustに。XMLのフォーマットにはXMLフォーマッターを使用してください。
XMLをRustに変換が役立つ場面
APIやXMLフィードを消費するRustアプリを構築する際にこのツールを使用します。
よくある質問
quick-xml vs roxmltree — どちらを使うべきですか?
quick-xmlは高性能なストリーミングパーサーでserdeと直接統合できます。大きなフィードや本番環境に最適です。roxmltreeは小さなドキュメント向けのシンプルなDOMリーダーです。#[derive(Deserialize)]をすぐに使いたい場合はquick-xmlが標準的な選択です。
quick-xmlをプロジェクトに追加するには?
Cargo.tomlにquick-xml = { version = "0.36", features = ["serialize"] }とserde = { version = "1", features = ["derive"] }を追加してください。その後quick_xml::de::from_str(&xml)で構造体に直接デシリアライズできます。
フィールドに#[serde(rename)]属性があるのはなぜ?
XML要素名はcamelCase(例:planName)の場合が多いですが、Rustの慣習はsnake_case(plan_name)です。#[serde(rename)]属性がデシリアライズ時にXMLフィールド名をRustフィールド名に正しくマッピングします。
XMLデータはサーバーに送信されますか?
いいえ。すべての処理はDOMParser APIを使用してブラウザ内でローカルに実行されます。何もアップロードや保存されません。
XMLをRustに変換の例
XMLからRust構造体を生成する例です。
例:加入者レコード
XML入力:
生成されたRust出力:
関連ツール
quick-xmlについてはdocs.rs、serdeについてはserde.rs、XMLについてはW3C XMLを参照してください。