Konverter Gratis

XML to JSON Converter

Convert XML data or files to JSON format instantly in your browser. Supports custom indentation and handles nested structures.

Select XML file

or drag and drop here

Atau

Tentang alat ini

XML dan JSON keduanya merupakan format pertukaran data tetapi berasal dari era web yang berbeda. XML, yang distandarisasi pada tahun 1998, dirancang sebagai format markup yang menggambarkan dirinya sendiri dengan atribut, namespace, dan validasi skema. JSON muncul pada awal tahun 2000an sebagai format yang lebih ringan dan lebih cocok untuk runtime JavaScript dan API modern. Sebagian besar API web baru menggunakan JSON; banyak sistem lama — layanan SOAP, RSS feed, file konfigurasi, integrasi perusahaan — masih menghasilkan XML. Mengonversi keduanya adalah salah satu tugas interop yang paling umum dalam pembangunan modern.

Konversinya tidak sepenuhnya lossless karena kedua format tersebut memiliki kekuatan ekspresi yang berbeda. XML memiliki atribut (yang tidak dimiliki JSON), membedakan antara konten teks dan nama elemen, dan mendukung konten campuran (elemen yang berisi teks dan elemen turunan). Model objek/array langsung JSON tidak dapat secara langsung mewakili fitur-fitur ini, sehingga konverter menerapkan konvensi: atribut menjadi kunci @-prefixed, konten teks menjadi kunci #text, dan seterusnya.

Konverter ini mem-parsing XML menggunakan DOMParser bawaan browser dan menjalankan pohon DOM yang dihasilkan untuk menghasilkan JSON. Elemen dengan nama tag yang sama dengan saudaranya dikumpulkan ke dalam array; atribut masuk ke kunci khusus; ruang nama dan instruksi pemrosesan dipertahankan saat ada. Hasilnya adalah JSON yang dapat dibaca manusia dan kembali ke XML.

Mengapa Mengonversi XML ke JSON

Kebanyakan kode aplikasi modern lebih nyaman dengan JSON. JavaScript mem-parsing JSON secara asli, modul json Python ada di perpustakaan standar, dan hampir semua bahasa lain memiliki dukungan JSON kelas satu yang setara. Pemrosesan XML memerlukan impor perpustakaan tambahan dan menulis lebih banyak boilerplate. Mengonversi XML masuk ke JSON sebelum pemrosesan sering kali merupakan jalur tercepat dari umpan XML eksternal ke struktur data internal.

Perkakas juga memanfaatkan JSON. Percantik JSON, validator, validator skema, bahasa kueri (jq, JSONPath), dan viewer sangat banyak; padanan XMLnya lebih sedikit dan seringkali lebih tua. Bekerja di JSON membuka ekosistem alat yang lebih kaya.

Cara menggunakan

Tempel XML, dapatkan JSON.

  1. Tempel atau unggah XML Anda: Tempelkan teks XML ke area input atau letakkan file. XML harus dalam format yang baik; XML yang salah menghasilkan kesalahan penguraian, bukan tebakan.
  2. Mengkonversi: DOMParser membangun DOM, konverter menjalankan setiap elemen, dan JSON dihasilkan menggunakan kunci atribut (@attr) dan kunci konten teks (#text) jika diperlukan. Elemen saudara dengan nama yang sama menjadi array.
  3. Tinjau strukturnya: Periksa JSON untuk mengonfirmasi atribut, teks, dan sarang dipetakan seperti yang diharapkan. Konvensi yang digunakan (misalnya, @ untuk atribut) terlihat di output.
  4. Unduh atau salin: Simpan sebagai .json atau salin ke clipboard.

Kasus Penggunaan Umum

Detail Teknis

DOMParser menghasilkan XML DOM yang identik dengan apa yang digunakan browser untuk halaman XHTML. Konverter menjalankan DOM ini secara rekursif. Untuk setiap elemen, ia membuat objek JSON: atribut menjadi kunci yang diawali dengan @ (misalnya, @id, @class); elemen anak elemen tersebut diulang ke dalam struktur yang sama; konten teks, ketika hadir bersama anak-anak, berada di bawah kunci #text.

Elemen anak berulang dengan nama tag yang sama dikumpulkan ke dalam array JSON. Seorang anak dengan nama tertentu muncul sebagai nilai objek; beberapa anak muncul sebagai array objek. Konvensi ini berfungsi dengan baik dalam praktiknya, tetapi berarti bentuk JSON bergantung pada apakah elemen muncul satu kali atau beberapa kali — suatu ketidaksempurnaan yang diketahui pada pemetaan XML-ke-JSON.

Ruang nama dipertahankan sebagai bagian dari nama elemen (awalan:Namalokal). Instruksi pemrosesan dan bagian CDATA diubah menjadi konten teks. Deklarasi XML dan DOCTYPE dihapus dari keluaran JSON tetapi tidak memengaruhi data.

Praktik Terbaik

Pertanyaan yang sering diajukan

Apakah mengonversi XML ke JSON mengubah konten?
Kontennya dijaga seakurat mungkin. Namun, beberapa fitur khusus format mungkin tidak memiliki padanan langsung, sehingga perbedaan format kecil dapat terjadi.
Mengapa mengonversi data ke format JSON?
JSON adalah format data standar untuk API web dan aplikasi JavaScript. Ini dapat dibaca manusia, didukung secara luas oleh bahasa pemrograman, dan memiliki sintaks yang lebih sederhana daripada XML.
Apakah konverter menangani struktur XML yang bersarang atau kompleks?
Ya. Alat ini dengan benar mengurai objek bertumpuk, array, dan semua tipe data XML standar, sehingga mempertahankan struktur data lengkap dalam output JSON.
Apakah konversi ini aman dan pribadi?
Ya. Semua pemrosesan terjadi secara lokal di browser Anda. Data Anda tidak pernah keluar dari perangkat — tidak ada unggahan server, tidak ada pemrosesan cloud, tidak ada pengumpulan data.
Apakah bagian CDATA ditangani?
Ya. Konten CDATA diubah menjadi teks biasa dalam output JSON. Pembungkus CDATA sendiri tidak disimpan, tetapi isinya tetap ada.
Apakah data saya diunggah ke server?
Tidak. DOMParser berjalan di browser Anda; konversi terjadi sepenuhnya di perangkat Anda.
Apakah JSON akan kembali ke XML?
Ya jika Anda menggunakan konvensi terbalik (alat JSON ke XML mengikuti aturan @attr dan #text yang sama). Perjalanan pulang pergi mempertahankan struktur untuk XML tipikal; beberapa kasus edge (urutan konten campuran, instruksi pemrosesan) mungkin tidak dapat bertahan dengan sempurna.
Berapa ukuran masukan maksimum?
Hingga 50MB. DOMParser dibatasi memori oleh browser Anda; file XML yang sangat besar mungkin melambat atau gagal diurai.