Cách sử dụng
- Dán XML hoặc tải mẫu có sẵn.
- Chọn có chuyển số và boolean hay không.
- Sao chép JSON hoặc tải xuống.
Giải thích tùy chọn
- Thuộc tính
- Một thuộc tính như id="bk101" trở thành khóa "@id". Nội dung văn bản đi cùng thuộc tính được đưa vào "#text".
- Phần tử lặp lại
- Phần tử xuất hiện nhiều lần dưới cùng một phần tử cha trở thành mảng JSON; một phần tử xuất hiện một lần vẫn là một object.
- Chuyển số và giá trị boolean
- Khi bật, 44.95 trở thành số và true trở thành boolean. Tắt để giữ các mã như 00123 đúng nguyên văn.
Ví dụ
XML này, gồm cả khai báo và một chú thích:
<?xml version="1.0"?>
<!-- c -->
<catalog>
<book id="bk101" in_stock="true">
<title>XML Guide</title>
<price currency="USD">44.95</price>
<tag>a</tag><tag>b</tag>
<isbn>00123</isbn>
</book>
</catalog>
trở thành JSON này khi bật Chuyển số và giá trị boolean:
{
"catalog": {
"book": {
"title": "XML Guide",
"price": {
"#text": 44.95,
"@currency": "USD"
},
"tag": [
"a",
"b"
],
"isbn": 123,
"@id": "bk101",
"@in_stock": true
}
}
}
Các thuộc tính được liệt kê sau các phần tử con. Khai báo và chú thích bị bỏ, và tag trở thành mảng vì nó xuất hiện hai lần. Khi tắt tùy chọn, 44.95 giữ là “44.95”, isbn giữ là “00123” và thuộc tính trở thành “true” dưới dạng văn bản. Nó ảnh hưởng đến giá trị thuộc tính cũng như văn bản phần tử.
Câu hỏi thường gặp
Chú thích và khai báo XML sẽ ra sao?
Chúng bị loại bỏ, vì JSON không có nơi lưu chúng. Dữ liệu phần tử và thuộc tính được giữ lại.
Vì sao có lúc một danh sách lại thành object thay vì mảng?
XML không nói rõ một phần tử có thể lặp lại hay không. Khi chỉ xuất hiện một lần, công cụ không thể biết đó là danh sách, nên tạo ra một object.
Nếu XML không hợp lệ thì sao?
Lỗi đầu tiên được báo kèm số dòng, ví dụ một thẻ đóng không khớp.
Quyền riêng tư
Công cụ này chạy hoàn toàn trong trình duyệt của bạn. Tệp và văn bản được xử lý ngay trên thiết bị và không bao giờ được tải lên máy chủ của chúng tôi.