Bỏ qua tới nội dung
Toolbench

Chuyển XML sang JSON

Mới

Chuyển XML sang JSON và tự chọn cách xử lý thẻ lặp, thay vì để công cụ đoán giúp bạn.

Chạy hoàn toàn trong trình duyệt của bạn

Đang tải công cụ...

Cách sử dụng

  1. Dán XML của bạn — một tài liệu, một RSS feed, một phản hồi SOAP, hoặc một đoạn cắt ra từ giữa file.
  2. Chọn cách xử lý thẻ lặp: chỉ thành mảng khi thẻ lặp lại, hoặc luôn luôn là mảng.
  3. Quyết định có giữ thuộc tính không, và số có nên giữ nguyên dạng chuỗi không.
  4. Sao chép JSON, hoặc tải về thành file.

Tính năng

  • Trả lời đúng câu hỏi khó nhất khi chuyển XML: một thẻ item và hai thẻ item có cùng schema, nên chọn "luôn là mảng" sẽ cho cấu trúc không đổi theo dữ liệu mẫu.
  • Thuộc tính được thêm tiền tố, nên thuộc tính và thẻ con trùng tên không bao giờ ghi đè lên nhau.
  • Số giữ nguyên dạng chuỗi trừ khi bạn yêu cầu khác, vì việc ép kiểu sẽ âm thầm phá hỏng mã sản phẩm dạng 007 và các ID dài quá giới hạn của số thực.
  • Nội dung hỗn hợp giữ đủ cả hai phần — phần chữ và các thẻ nằm bên trong.
  • Lỗi cú pháp dùng chung bộ phân tích với công cụ định dạng XML, nên bạn nhận được số dòng và tên thẻ chứ không phải "dữ liệu không hợp lệ".

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

Vì sao cùng một thẻ lúc thành đối tượng, lúc thành mảng?
Vì XML không có khái niệm mảng. Danh sách một phần tử và danh sách hai phần tử trông khác nhau trong tài liệu dù schema nói cả hai đều là danh sách, và bản thân file không cho biết ý định của người viết. Chế độ "mảng khi lặp lại" cho kết quả gọn như bạn mong đợi từ một file mẫu; chế độ "luôn là mảng" cho cấu trúc không đổi khi phần tử thứ hai xuất hiện — đó là thứ bạn cần nếu có code đọc JSON này.
Thuộc tính được xử lý thế nào?
Chúng trở thành khoá bình thường kèm tiền tố, mặc định là @, nên thuộc tính tên id và thẻ con tên id cùng tồn tại mà không ghi đè nhau. Bạn có thể tắt hẳn nếu chỉ cần nội dung thẻ, hoặc đổi tiền tố nếu ký tự @ gây khó cho hệ thống đọc JSON sau đó.
Vì sao số của tôi lại thành chuỗi?
Vì trong XML chúng vốn là chuỗi — tài liệu không có kiểu dữ liệu. Việc đọc thành số bị tắt mặc định vì nó gây mất mát mà bạn chỉ phát hiện về sau: mã sản phẩm 007 thành 7, ID dài hơn 15 chữ số bị làm tròn theo số thực gần nhất, và phiên bản 1.0 mất số 0. Chỉ bật khi bạn chắc chắn dữ liệu an toàn.
Chú thích và khai báo XML thì sao?
Chúng bị loại bỏ vì JSON không có chỗ chứa, nhưng công cụ đếm và báo lại cho bạn thay vì để chúng biến mất lặng lẽ. CDATA thì khác: nội dung bên trong là dữ liệu thật nên được giữ lại và đọc như chữ bình thường.

Thụt lề XML mà không sửa nội dung: phần nội dung trộn chữ và thẻ giữ nguyên khoảng trắng, còn thẻ không khớp được chỉ đích danh kèm số dòng.

Định dạng và làm đẹp JSON ngay lập tức.

Chuyển mảng JSON thành bảng tính, với cột lấy từ mọi bản ghi.

Chuyển CSV hoặc TSV sang JSON, xử lý đúng các trường có dấu ngoặc kép như bảng tính xuất ra.

Chuyển XML sang JSON — Công cụ đổi XML thành JSON miễn phí