jsonecho

XML ke Rust

Tempel dokumen XML untuk membuat tipe Rust yang sesuai dengan strukturnya.

Memuat alat...

Cara menggunakan XML ke Rust

  1. Tempel contoh XML yang mewakili data Anda, sebaiknya dengan semua kolom opsional sudah terisi.
  2. Tentukan nama tipe utama, lalu pilih apakah Anda ingin menyertakan kode bantu atau hanya membuat tipe.
  3. Salin kode Rust yang dihasilkan ke proyek Anda.

Tentang XML ke Rust

Menulis kelas model secara manual untuk data XML yang besar itu melelahkan dan rawan salah ketik. Tempel contohnya di sini, lalu generator akan mengenali strukturnya: kolom yang tersedia, mana yang berupa objek atau array, dan tipe data setiap nilainya. Hasilnya berupa struct yang menurunkan Serialize dan Deserialize dari crate serde.

XML terlebih dahulu dikonversi ke JSON dengan aturan yang sama seperti alat XML ke JSON kami: atribut diberi awalan @_ dan konten teks yang berada bersama atribut diberi nama #text. Tipe Rust dibuat dari hasil tersebut. Nama kolom diubah menjadi snake_case dan diberi atribut rename dari serde jika berbeda dari nama aslinya.

Menggunakan kode yang dihasilkan

Tambahkan serde dan serde_json ke Cargo.toml dan hubungi serde_json::from_str::<Root>(&json).

Bidang opsional adalah Option<T>. Nilai null dan kunci yang tidak ada sama-sama menjadi None.

Pertanyaan yang sering diajukan

Apa dependensi kode Rust yang dihasilkan?

Hasilnya berupa struct yang menurunkan Serialize dan Deserialize dari crate serde.

Bagaimana saya menganalisis XML dengan hasil?

Ubah XML ke JSON terlebih dahulu (alat XML kami ke JSON melakukan ini dengan cara yang sama), kemudian tambahkan serde dan serde_json ke Cargo.toml dan hubungi serde_json::from_str::<Root>(&json).

Bagaimana kolom opsional dan kolom yang tidak ada ditangani?

Bidang opsional adalah Option<T>. Nilai null dan kunci yang tidak ada sama-sama menjadi None.

Apakah generator memeriksa lebih dari satu entri?

Generator hanya mengenali data yang ada dalam contoh Anda. Kolom yang tidak ada dalam contoh tidak akan muncul pada tipe yang dibuat. Jika suatu nilai dalam contoh adalah null, tipe datanya tidak dapat ditentukan. Tempel contoh dengan kolom yang terisi selengkap mungkin, atau gunakan array berisi beberapa entri yang berbeda.

Apakah XML saya dikirim ke server?

Tidak. Saat pertama kali digunakan, generator berukuran sekitar 1 MB diunduh ke browser Anda. Seluruh proses selanjutnya berjalan secara lokal.

Alat lainnya di Data ke Kelas

Semua alat →