XML sang JSON
Phân tích mọi tài liệu XML thành JSON. Các phần tử anh em lặp lại trở thành mảng, thuộc tính và giá trị văn bản được giữ nguyên, và XML không hợp lệ sẽ được
Phân tích một tài liệu XML thành JSON: các phần tử anh em lặp lại trở thành mảng, thuộc tính và nội dung văn bản được giữ nguyên, và XML không hợp lệ được báo kèm vị trí của vấn đề trước khi bất kỳ chuyển đổi nào diễn ra.
Công cụ hữu ích khi một API hay một bản xuất trả cho bạn XML trong khi phần còn lại của hệ thống dùng JSON - một phản hồi SOAP, một nguồn dữ liệu, một bản xuất cấu hình. Thuộc tính được giữ bên cạnh các phần tử con nên không có gì bị mất, và cấu trúc rất dễ ánh xạ vào lược đồ riêng của bạn sau đó.
Cách chuyển XML sang JSON
Dán XML của bạn
Chuyển đổi rồi xem lại cấu trúc
Sao chép hoặc tải tệp JSON
Câu hỏi thường gặp
Các phần tử lặp lại được xử lý thế nào?
Những phần tử anh em cùng tên thẻ trở thành một mảng, bất kể chúng có bao nhiêu, nên một danh sách chỉ có một phần tử vẫn được phân tích thành danh sách chứ không phải một đối tượng đơn.
Thuộc tính sẽ ra sao?
Chúng được giữ làm thuộc tính nằm cạnh nội dung phần tử, nên không có gì bị mất. Hãy chỉnh cách đặt tên trong bước ánh xạ nếu lược đồ của bạn mong đợi một đối tượng attributes riêng.
Tôi có thể giữ nguyên thứ tự phần tử gốc không?
Đối tượng JSON theo định nghĩa là không có thứ tự, nên thứ tự phần tử không được đảm bảo. Nếu thứ tự thực sự quan trọng về mặt ngữ nghĩa, hãy giữ XML nguồn làm tham chiếu.
Vì sao XML của tôi bị từ chối?
Nguyên nhân thường gặp là thẻ không được đóng, tiền tố namespace không được khai báo, hoặc có văn bản thừa trước khai báo XML. Thông báo lỗi chỉ đúng vị trí nơi quá trình phân tích thất bại.
Công cụ có hỗ trợ CDATA và namespace không?
Các đoạn CDATA được đọc như văn bản và tiền tố namespace được giữ như một phần của tên phần tử - đây thường là điều bạn muốn cho một ánh xạ trung thực.
XML của tôi có bị tải lên không?
Không, việc phân tích diễn ra cục bộ trong trình duyệt của bạn.
Tổng quan nhanh
| Đầu vào | XML |
|---|---|
| Nhiều tệp cùng lúc | Không |
| Chạy ở đâu | Ngay trong trình duyệt - tệp không bao giờ bị tải lên |
| Dùng được ngoại tuyến | Có — sau khi trang đã tải xong |
| Giá | Miễn phí, không đăng ký, không hình mờ |
Chọn một định dạng dữ liệu
JSON là mặc định cho mọi thứ một API trả về hoặc một chương trình đọc vào: nó xử lý cấu trúc lồng nhau, số, giá trị boolean và null một cách tự nhiên, và ngôn ngữ nào cũng phân tích được nó. CSV nhỏ hơn và mở thẳng vào bảng tính, nhưng nó không có cách nào diễn tả cấu trúc lồng nhau và không có tiêu chuẩn chung cho ký tự phân tách, cách đặt ngoặc kép hay bộ ký tự - đó chính là chỗ các phép chuyển đổi hay sai. XML dài dòng nhưng mang được thuộc tính, nội dung hỗn hợp và lược đồ, nên nó vẫn chiếm ưu thế trong các định dạng tài liệu và những hệ thống tích hợp cũ. YAML dễ đọc nhất cho phần cấu hình nhưng rất nhạy với dấu cách và có những cách ép kiểu gây bất ngờ ("no" thành false, một phiên bản như 1.10 thành 1.1). Hãy chọn định dạng mà công cụ tiếp nhận ưa dùng, chứ không phải định dạng trông đẹp nhất.
Những chỗ việc chuyển đổi âm thầm hỏng
Phần lớn lỗi chuyển đổi không nằm ở cú pháp mà ở ý nghĩa. Một cột mã bưu chính trong CSV mất các số 0 đứng đầu ngay khi bảng tính đoán rằng đó là số; một ID dài vượt quá độ chính xác của số dấu phẩy động; ngày tháng đổi nghĩa tuỳ theo nó được viết theo kiểu ngày trước hay tháng trước. Các khoá JSON không có thứ tự nhưng mảng thì có, và một công cụ sắp xếp khoá thì không đổi gì, còn công cụ sắp xếp mảng thì đổi dữ liệu. Unicode là một cái bẫy khác: văn bản có thể đến dưới dạng UTF-8, UTF-16 hoặc kèm dấu thứ tự byte, và một bộ giải mã đoán sai sẽ biến các ký tự có dấu thành chữ hỏng. Trước khi tin vào bất kỳ phép chuyển đổi nào, hãy kiểm tra nhanh hàng đầu và hàng cuối, mọi trường có số 0 đứng đầu, và mọi trường chứa dấu ngoặc kép, dấu phẩy hay ký tự xuống dòng.