XML入力

Rust出力

XMLをRustに変換とは?

Rustはquick-xmlserdeでXML解析を提供します。このツールはXML構造からSerde互換のRust構造体を生成します。W3C XML仕様で形式が定義されています。変換はブラウザで実行されます。サーバーには送信されません。

このツールの使い方

1

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

XMLを貼り付けるか、ファイルをアップロードします。パネルで構造体名、モジュール、Data Class、Nullable型を設定します。

2

Rust出力を確認

右パネルに生成された構造体が表示されます。quick-xmlとserdeで解析してください。

3

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

コピーまたはダウンロードを使用します。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.tomlquick-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を参照してください。