UltKit

Penukar JSON ke XML

Serahkan data JSON kepada perisian yang hanya memahami XML. Setiap rekod menjadi elemen, setiap kunci menjadi tag anak, dan seluruh dokumen berada di bawah satu elemen akar yang namanya Anda pilih.

Penukar Data

atau seret Fail CSV, TSV, TXT … ke sini ·

Maks 95 MB setiap fail· Sehingga 20 fail· Dipadam selepas 30 minit

Output

Fail diproses pada pelayan kami dan dipadam selepas 30 minit.

Cara menggunakan alat ini

  1. 1

    Muat naik JSON

    Tambah fail .json, seperti respons API, atau fail JSON Lines. Sehingga 20 fail, setiap satu 95 MB.

  2. 2

    Namakan elemen akar

    Di bawah Tetapan lanjutan, taip tag terluar dalam Tag akar XML (nilai asalnya rows) dan biarkan Format kemas dihidupkan untuk output yang berinden.

  3. 3

    Tukar dan petakan

    Tekan Tukar ke XML dan muat turun. Namakan semula tag jika skema sistem penerima mengharapkan nama yang berbeza.

Mengapa tukar JSON ke XML sedangkan kebanyakan API sudah beralih ke JSON

JSON menguasai API web; spesifikasi semasanya, RFC 8259 pada 2017, hanya beberapa halaman. XML lebih lama, Syor W3C sejak Februari 1998, dan ia kekal di tempat-tempat yang kontraknya ketat: perbankan, e-invois, penerbitan dan pelaporan kerajaan.

Jadi arah penukaran ini biasanya mengikut wang atau peraturan. Pembangun mengambil pesanan daripada API JSON dan perlu menghantarnya ke perkhidmatan SOAP rakan kongsi. Sebuah kedai menyimpan produk dalam JSON tetapi laman perbandingan mahukan suapan XML. Satu pasukan menyimpan terjemahan sebagai JSON dan binaan Android mengharapkan strings.xml. Jika destinasinya hamparan, JSON ke CSV memberi anda baris, bukan elemen.

Sistem yang masih memerlukan input XML

Di mana penukar JSON ke XML digunakan
OrganisasiKeperluanSumber
Perkhidmatan web SOAPSetiap permintaan dihantar sebagai sampul XML; SOAP 1.2 menjadi Syor W3C pada 2003—
Google Merchant CenterSuapan produk diterima sebagai XML dalam RSS 2.0 atau Atom 1.0, serta teks berpembatas—
E-invois PeppolInvois dipertukarkan sebagai dokumen XML UBL 2.1 di bawah peraturan Peppol BIS Billing 3.0—
Aplikasi AndroidSumber teks dan terjemahan terletak dalam res/values/strings.xml—

Contoh JSON ke XML: dua produk

XML yang ditulis daripada [{"sku":"A-17","price":12.5,"tags":["new","sale"]}, {"sku":"B-02","price":8}]
<?xml version="1.0" encoding="UTF-8"?>
<rows>
  <row>
    <sku>A-17</sku>
    <price>12.5</price>
    <tags>baharu</tags>
    <tags>jualan</tags>
  </row>
  <row>
    <sku>B-02</sku>
    <price>8</price>
  </row>
</rows>

MitosJSON dan XML dipetakan satu lawan satu, jadi penukarannya tepat.

FaktaXML mempunyai atribut, kandungan bercampur dan ruang nama yang tiada dalam JSON, dan JSON mempunyai jenis data yang tiada dalam XML. Penukar mesti memilih satu pemetaan; yang ini menggunakan elemen anak sepenuhnya.

MitosNombor 12.5 kekal sebagai nombor dalam XML.

FaktaXML menyimpan aksara. 12.5 ialah teks sehingga skema atau program pembaca menyatakan ia perpuluhan.

Apakah yang berubah apabila JSON menjadi XML

Tiga perkara patut disemak. Jenis data menjadi teks, jadi true, null dan 0 semuanya tiba sebagai aksara; null biasanya menjadi elemen kosong. Kunci yang bukan nama XML yang sah mesti dinamakan semula, kerana tag tidak boleh bermula dengan digit atau mengandungi ruang. Dan outputnya lebih besar, kerana setiap nilai dibalut tag pembuka dan penutup yang mengulang kunci.

Tiada yang lain hilang. Sarang kekal sebagai elemen bersarang, susunan rekod dikekalkan, dan teks Unicode kekal utuh kerana fail ditulis dalam UTF-8. Lebih banyak pilihan untuk data berstruktur, daripada YAML hingga SQL, disenaraikan di halaman penukar data.

Fakta format JSON dan XML

JSON

JavaScript Object Notation

JSON ialah format teks ringan untuk data berstruktur, dipopularkan oleh Douglas Crockford pada awal 2000-an dan dipiawaikan sebagai RFC 8259 dan ECMA-404. Ia mewakili objek, tatasusunan, rentetan, nombor, boolean dan null dengan sintaks yang mudah dibaca. Ia ialah format lalai untuk API web, fail konfigurasi dan pertukaran data antara aplikasi dalam hampir semua bahasa pengaturcaraan. Ia tidak mempunyai komen, tarikh atau skema terbina dalam, dan fail bersarang yang besar sukar dibaca tanpa pemapar.

Pemampatan
–
Ketelusan
–
Animasi
–
Diperkenalkan
2001 · Douglas Crockford
Penukar JSON

XML

Extensible Markup Language

XML ialah bahasa penanda untuk data berstruktur yang diterbitkan oleh W3C pada 1998. Ia menggunakan teg bersarang dengan atribut dan menyokong skema, ruang nama dan pengesahan, menjadikannya mantap untuk dokumen kompleks. Ia mendasari suapan RSS, SVG, dokumen Office, peta laman dan banyak pertukaran data perusahaan serta kerajaan. XML bertele-tele berbanding JSON, tetapi setiap bahasa pengaturcaraan dan banyak alat hamparan boleh membacanya.

Pemampatan
–
Ketelusan
–
Animasi
–
Diperkenalkan
1998 · W3C
Penukar XML

JSON ditukar ke XML apabila data moden perlu memasuki kontrak yang lebih lama: titik akhir SOAP, suapan produk, rangkaian e-invois atau fail konfigurasi yang penggunanya ditulis untuk mengurai elemen, bukan pendakap.

Soalan lazim penukar JSON ke XML

Mengapakah XML memerlukan satu elemen akar sedangkan JSON saya bermula dengan tatasusunan?

Spesifikasi XML 1.0 mewajibkan setiap dokumen yang tersusun baik mempunyai tepat satu elemen yang mengandungi semua yang lain. Tatasusunan JSON tidak mempunyai pembalut sedemikian, jadi penukar menambahnya, dinamakan mengikut Tag akar XML, dan meletakkan setiap item tatasusunan di dalamnya sebagai <row>.

Apakah yang berlaku pada kunci JSON seperti "2024 total" atau "unit price"?

Kedua-duanya bukan nama elemen XML yang sah: nama tidak boleh bermula dengan digit atau mengandungi ruang. Namakan semula kunci sedemikian dalam JSON sebelum menukar, sebaik-baiknya kepada nama tag tepat yang digunakan skema penerima, supaya output tidak perlu dibersihkan kemudian.

Bagaimanakah tatasusunan JSON di dalam rekod ditulis dalam XML?

Sebagai elemen yang sama diulang sekali bagi setiap item. Tatasusunan tags dengan tiga rentetan menjadi tiga elemen <tags> dalam satu row. Tatasusunan kosong tidak meninggalkan apa-apa, iaitu salah satu daripada beberapa tempat JSON ke XML kehilangan maklumat.

Adakah XML ini akan lulus pengesahan XSD rakan kongsi saya?

Hanya jika strukturnya sudah sepadan. Penukar menulis salinan JSON anda yang setia dan tersusun baik; ia tidak dapat mengetahui susunan elemen, ruang nama atau atribut yang diperlukan rakan kongsi. Gunakan output sebagai titik permulaan dan laraskan mengikut skema.

Bolehkah saya menukar XML kembali ke JSON?

Gunakan XML ke JSON. Jangkakan sedikit perbezaan semasa penukaran balik: XML menyimpan setiap nilai sebagai teks, jadi nombor atau true yang asalnya dalam JSON mungkin kembali sebagai rentetan.