ตัวแปลง XML เป็น JSON

แปลง XML เป็น JSON ได้ทันที

อินพุต XML

ตัวเลือก

เอาต์พุต JSON

ผลลัพธ์การแปลงจะปรากฏที่นี่...

ภาพรวม

ตัวแปลง XML เป็น JSON จะแปลง XML ที่เต็มไปด้วยมาร์กอัป — การตอบกลับ SOAP, ฟีด RSS/Atom, ไฟล์การตั้งค่ารุ่นเก่า — ให้กลายเป็น JSON ที่สะอาดซึ่งโค้ด JavaScript หรือ Node.js ของคุณสามารถนำไปใช้ได้โดยตรง เครื่องมือนี้ทำงานด้วยตัวแยกวิเคราะห์ XML ของจริง ไม่ใช่ regular expression จึงตรวจสอบความถูกต้องของโครงสร้าง (well-formedness) และรายงานบรรทัดกับคอลัมน์ที่แน่นอนของแท็กที่เสียหาย พร้อมทั้งให้คุณควบคุมอย่างละเอียดว่าแอตทริบิวต์ เนมสเปซ และองค์ประกอบที่ซ้ำกันจะถูกแสดงอย่างไรใน JSON ที่ได้

สิ่งที่ตัวแปลงนี้ตรวจจับและจัดการ
  • การตรวจสอบ XML ของจริง: XML ที่ไม่ถูกต้อง (แท็กไม่ปิด การซ้อนไม่ตรงกัน ไวยากรณ์แอตทริบิวต์ผิด) จะถูกปฏิเสธพร้อมบรรทัดและคอลัมน์ที่แม่นยำ ไม่ใช่การเดาแบบเงียบ ๆ
  • การจัดการแอตทริบิวต์ที่ปรับได้: เก็บแอตทริบิวต์แบบมีคำนำหน้า (@_id) แปลงเป็นคุณสมบัติของออบเจ็กต์ปกติ จัดกลุ่มไว้ภายใต้ออบเจ็กต์ $attributes เดียว หรือละทิ้งไปทั้งหมด
  • กลยุทธ์เนมสเปซ: คงคำนำหน้าเนมสเปซบนชื่อแท็กไว้ตามเดิม ตัดออกเพื่อให้คีย์สะอาดขึ้น หรือเก็บ URI ของเนมสเปซแยกไว้เป็นข้อมูลเมตา
  • การล้างข้อมูล SOAP: ลบองค์ประกอบห่อหุ้ม Envelope/Body ที่พบได้ทั่วไปในการตอบกลับ SOAP โดยอัตโนมัติ เหลือไว้เฉพาะเพย์โหลด (เมื่อใช้แล้วจะไม่ปลอดภัยสำหรับการแปลงไป-กลับอีกต่อไป)
  • การควบคุม CDATA และการแยกวิเคราะห์ประเภทข้อมูล: เลือกได้ว่าจะแกะส่วน CDATA ออกมาเป็นคุณสมบัติเฉพาะหรือไม่ และเลือกความเข้มข้นในการแปลงข้อความที่ดูเหมือนตัวเลขหรือบูลีนให้เป็นชนิดข้อมูล JSON จริง
  • เส้นทางบังคับอาร์เรย์: ระบุเส้นทางที่คั่นด้วยจุดที่ต้องการ เช่น rss.channel.item ให้กลายเป็นอาร์เรย์ JSON เสมอ แม้ว่าฟีดนั้นจะมีเพียงรายการเดียวก็ตาม
  • ทำงานทั้งหมดในเบราว์เซอร์ของคุณ: ข้อมูล XML ของคุณจะไม่ถูกอัปโหลดไปยังเซิร์ฟเวอร์เลย
เมื่อใดที่คุณควรแปลง XML เป็น JSON
  • ย้าย SOAP API รุ่นเก่าไปยัง REST endpoint ที่ใช้ JSON เพื่อให้โค้ด JavaScript หรือ Node.js จัดการการตอบกลับได้โดยไม่ต้องใช้ SOAP client
  • แยกวิเคราะห์ฟีด RSS หรือ Atom เป็น JSON เพื่อสร้างตัวรวบรวมเนื้อหาหรือแดชบอร์ดข่าวในเฟรมเวิร์ก JavaScript
  • แปลงไฟล์การตั้งค่า XML เช่น pom.xml ของ Maven หรือ web.config ของ .NET ให้เป็น JSON เพื่อแก้ไขด้วยโปรแกรมหรือเปรียบเทียบกับรูปแบบการตั้งค่าอื่น
  • ตรวจสอบการตอบกลับ XML API ที่ยืดยาวโดยแปลงให้เป็น JSON ที่อ่านง่ายและมีการเยื้องระหว่างการดีบัก
  • นำเข้าไฟล์ส่งออกข้อมูล XML เข้าสู่ฐานข้อมูลที่ใช้ JSON เป็นหลัก เช่น MongoDB
วิธีแปลง XML เป็น JSON
  1. 1.วาง XML ของคุณลงในตัวแก้ไขข้อมูลนำเข้า หรืออัปโหลดไฟล์ .xml
  2. 2.เลือกวิธีแสดงแอตทริบิวต์: คุณสมบัติแบบมีคำนำหน้า คุณสมบัติปกติ จัดกลุ่มภายใต้ $attributes หรือละเว้นทั้งหมด
  3. 3.เลือกกลยุทธ์เนมสเปซ — คงไว้ ตัดออก หรือเก็บเป็นข้อมูลเมตา — ให้เหมาะกับความสะอาดของคีย์ผลลัพธ์ที่คุณต้องการ
  4. 4.เปิดใช้งานการล้างข้อมูล SOAP หากคุณกำลังแปลง SOAP envelope และต้องการเฉพาะเพย์โหลดภายใน
  5. 5.คลิก Convert จากนั้นคัดลอกผลลัพธ์ JSON หรือดาวน์โหลดเป็น .json แบบจัดรูปแบบหรือแบบย่อ
กรณีขอบเขตที่ควรรู้
  • องค์ประกอบลูกที่ซ้ำกันเพียงรายการเดียว (มี <item> เดียวแทนที่จะเป็นหลายรายการ) จะไม่ถูกจัดเป็นอาร์เรย์โดยอัตโนมัติ เว้นแต่คุณจะระบุเส้นทางไว้ในเส้นทางบังคับอาร์เรย์ — มิฉะนั้นจะถูกแปลงเป็นออบเจ็กต์ธรรมดา ซึ่งอาจทำให้โค้ดที่คาดหวังอาร์เรย์ทำงานผิดพลาด
  • เนื้อหาผสม — องค์ประกอบที่มีทั้งข้อความและองค์ประกอบลูก — จะถูกทำให้แบนราบ โดยส่วนข้อความจะแสดงเป็นคุณสมบัติ #text เคียงข้างคีย์ขององค์ประกอบลูก
  • ค่าที่ดูเหมือนตัวเลขที่มีเลขศูนย์นำหน้า เช่น "00123" หรือจำนวนเต็มที่เกินความแม่นยำที่ปลอดภัยของ JSON จะถูกเก็บเป็นสตริงตามค่าเริ่มต้น ควรเปิดใช้งานการแยกวิเคราะห์ประเภทข้อมูลแบบเข้มข้นเฉพาะเมื่อคุณมั่นใจว่าข้อมูลไม่มีค่าที่คล้าย ID เท่านั้น
  • คอมเมนต์ XML จะถูกทิ้งระหว่างการแปลง เนื่องจาก JSON ไม่มีโครงสร้างที่เทียบเท่า
ข้อจำกัด
  • การแปลงไป-กลับ (XML เป็น JSON แล้วกลับเป็น XML) ไม่รับประกันว่าจะสร้างต้นฉบับขึ้นใหม่ได้ตรงทุกไบต์ — ลำดับองค์ประกอบ ช่องว่าง และคอมเมนต์จะไม่ถูกเก็บรักษาไว้อย่างสมบูรณ์ เว้นแต่จะเปิดใช้งานโหมด Round-Trip Safe และแม้จะเปิดใช้งานก็ควบคุมเฉพาะขั้นตอน XML เป็น JSON เท่านั้น
  • เอกสาร XML ขนาดใหญ่มาก (หลายสิบเมกะไบต์) อาจเกินหน่วยความจำของเบราว์เซอร์หรือทำให้ตัวแยกวิเคราะห์ทำงานช้าลง — สำหรับไฟล์ขนาดใหญ่มากให้ใช้ตัวแยกวิเคราะห์แบบสตรีม (SAX) หรือเครื่องมือบรรทัดคำสั่งอย่าง xmlstarlet
  • เครื่องมือนี้ตรวจสอบเฉพาะความถูกต้องของโครงสร้างเท่านั้น ไม่ตรวจสอบความถูกต้องตามสคีมา XSD — เอกสารที่เป็น XML ที่ถูกต้องแต่ละเมิดสคีมาจะยังคงถูกแปลงโดยไม่มีคำเตือน
ต้องการแปลงกลับทิศทางหรือไม่?

หากคุณเริ่มต้นจากออบเจ็กต์หรืออาร์เรย์ JSON และต้องการ XML — เช่น เพื่อเรียกใช้ endpoint SOAP รุ่นเก่า หรือสร้างไฟล์การตั้งค่าที่เครื่องมือซึ่งรองรับเฉพาะ XML ต้องการ — ให้ใช้ตัวแปลง JSON เป็น XML แทน ซึ่งช่วยให้คุณควบคุมการเยื้อง ตัดสินใจว่าคีย์ที่มีคำนำหน้า @ จะกลายเป็นแอตทริบิวต์หรือไม่ และระงับองค์ประกอบที่ว่างเปล่าได้