Chuyển đổi JSON sang XML

Chuyển JSON thành XML hợp lệ với phần tử gốc tùy chỉnh, thuộc tính qua khóa "@_", phần tử lặp lại cho mảng và khai báo XML tùy chọn. Miễn phí.

Chạy hoàn toàn trong trình duyệt. Dữ liệu của bạn không bao giờ bị tải lên.

Công cụ Liên quan

Xem Tất cả

JSON sang XML là gì?

Chuyển một tài liệu JSON thành XML. Đối tượng trở thành các phần tử lồng nhau, mảng trở thành các phần tử lặp lại cùng tên, khóa bắt đầu bằng tiền tố thuộc tính (mặc định @_) trở thành thuộc tính XML và #text trở thành nội dung văn bản của phần tử.

Cách sử dụng JSON sang XML

  1. Dán JSON vào ô Dữ liệu JSON đầu vào, hoặc dùng Tải ví dụ hay Mở tệp.
  2. Đặt Phần tử gốc (để trống nếu JSON đã có đúng một khóa cấp cao nhất), Phần tử cho mục mảng cho mảng cấp cao nhất và Tiền tố khóa thuộc tính.
  3. Chọn Thụt lề và có Thêm khai báo XML hay không.
  4. Kết quả XML cập nhật ngay khi bạn gõ; dùng Sao chép hoặc Tải xuống.

Ví dụ

Đầu vào
{"@_id":"7","name":"Ada","tags":["a","b"]}
Đầu ra
<?xml version="1.0" encoding="UTF-8"?>
<root id="7">
  <name>Ada</name>
  <tags>a</tags>
  <tags>b</tags>
</root>

Khi nào nên dùng JSON sang XML

Dùng để đưa dữ liệu JSON vào các hệ thống chỉ nhận XML như dịch vụ SOAP, feed kiểu RSS hoặc tích hợp cũ. XML không có kiểu dữ liệu gốc, nên số và boolean trở thành văn bản thuần; nếu hệ thống nhận yêu cầu một XSD cụ thể, hãy đối chiếu thứ tự và tên phần tử với XSD đó.

JSON sang XML hoạt động như thế nào

JSON được phân tích và mỗi khóa được chuẩn hóa thành tên XML hợp lệ (ký tự không hợp lệ thành _, tên bắt đầu bằng chữ số được thêm _ ở đầu). Sau đó đối tượng được tuần tự hóa bằng XMLBuilder của fast-xml-parser: ký tự đặc biệt được thoát (& → &amp;), giá trị null thành phần tử rỗng (<note/>), giá trị mảng lặp lại phần tử một lần cho mỗi mục và mảng cấp cao nhất được bọc thành <root><item>…</item></root>.

Các Trường Hợp Sử Dụng Phổ Biến

  • Gửi dữ liệu JSON đến endpoint SOAP hoặc XML-RPC
  • Tạo fixture kiểm thử XML từ mẫu JSON
  • Chuyển cấu hình được xuất dạng JSON sang XML
  • Tạo XML cho các công cụ chỉ nhập được XML

Câu Hỏi Thường Gặp

Làm sao tạo thuộc tính XML?

Thêm tiền tố thuộc tính vào trước khóa, mặc định là @_: {"@_id": "7"} trở thành id="7" trên phần tử cha. Hãy đổi tiền tố nếu JSON của bạn dùng @ hoặc $.

Mảng được xử lý thế nào?

"tags": ["a","b"] tạo ra hai phần tử <tags>. Mảng cấp cao nhất được bọc trong phần tử gốc với mỗi mục là một <item> (có thể tùy chỉnh).

Tôi có thể bỏ phần tử gốc bao ngoài không?

Có – hãy để trống Phần tử gốc. Khi đó JSON phải là đối tượng có đúng một khóa, và khóa đó trở thành phần tử gốc.

Bước tiếp theo nên làm

Khám phá thêm danh mục