Công cụ
VI

Chuyển JSON sang XML online

Dán JSON để nhận ngay XML đúng chuẩn (well-formed). Chọn phần tử gốc, tiền tố thuộc tính và kiểu thụt lề – việc chuyển đổi tuân theo các quy tắc đơn giản, dễ đoán.

JSON → XML

JSON

XML

Riêng tư: dữ liệu của bạn được xử lý ngay trong trình duyệt và không bao giờ được tải lên.

Cách chuyển JSON sang XML

  1. Dán JSON hoặc mở file .json. XML sẽ hiện ngay bên cạnh trong lúc bạn gõ.
  2. Đặt tên phần tử gốc (hoặc để trống để dùng khóa duy nhất ở cấp cao nhất), tiền tố thuộc tính và kiểu thụt lề.
  3. Sao chép XML hoặc tải về dưới dạng file .xml.

JSON được ánh xạ sang XML như thế nào

JSONXML
{"name": "Ada"}<name>Ada</name>
{"@id": "7"}thuộc tính id="7" trên phần tử cha
{"#text": "Hello"}nội dung văn bản của phần tử cha
{"tag": ["a", "b"]}<tag>a</tag><tag>b</tag>
{"note": null}<note/>
{"2nd key": 1}<_2nd_key>1</_2nd_key> – tên không hợp lệ được tự sửa
mảng ở cấp cao nhất [1, 2]<root><item>1</item><item>2</item></root>
&, <, > trong văn bản&amp;, &lt;, &gt;

JSON và XML khác nhau thế nào

JSON có mảng, số, boolean và null; XML chỉ có phần tử, thuộc tính và văn bản, nên kiểu dữ liệu không được giữ lại: 42 và "42" đều thành văn bản 42. Ngược lại, XML có thuộc tính, namespace và nội dung hỗn hợp mà JSON không có. Nếu định chuyển XML ngược lại sang JSON sau này, hãy giữ các quy ước phổ biến được dùng ở đây – @ cho thuộc tính và #text cho nội dung văn bản – vốn được hầu hết các công cụ chuyển đổi hiểu.

Câu hỏi thường gặp

Mảng JSON được chuyển sang XML như thế nào?

Mỗi mục trong mảng trở thành một phần tử XML mang tên khóa của mảng, nên {"book": [ … ]} thành nhiều phần tử <book>. Các mục của mảng ở cấp cao nhất thành phần tử <item> bên trong phần tử gốc.

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

Thêm tiền tố @ vào trước khóa: {"user": {"@id": 7, "name": "Ada"}} sẽ thành <user id="7"><name>Ada</name></user>. Bạn có thể đổi tiền tố trong phần tùy chọn.

Khóa không phải tên XML hợp lệ sẽ ra sao?

Các ký tự không được phép trong tên XML, như dấu cách, được thay bằng dấu gạch dưới, và tên bắt đầu bằng chữ số hoặc bằng “xml” sẽ được thêm dấu gạch dưới ở đầu: "2nd key" thành <_2nd_key>.

XML được tạo ra có hợp lệ không?

Có. Các ký tự đặc biệt đều được escape, mọi tên phần tử đều hợp lệ và tài liệu có đúng một phần tử gốc, kèm khai báo XML tùy chọn ở đầu.