JSON sang XML
Chuyển JSON thành XML tương đương, xử lý hợp lý các thuộc tính và mảng.
- Chạy trên trình duyệt của bạn — không có gì bạn nhập được tải lên
- Không cần đăng ký, không có hạn mức, dùng miễn phí bao nhiêu lần tùy thích
Cách hoạt động
JSON và XML có thể diễn đạt hầu hết những thứ giống nhau, nhưng không theo cùng một cách, nên mọi phép chuyển đổi đều phải đưa ra một vài quyết định. Công cụ này đưa ra những quyết định thông thường và cho bạn biết đó là gì.
Mảng trở thành các phần tử lặp lại
XML không có kiểu danh sách. Quy ước chuẩn là lặp lại phần tử cho mỗi mục, nên một mảng ba cuốn sách trở thành ba phần tử <book> nằm cạnh nhau. Đó là điều gần như mọi chương trình đọc XML mong đợi và là điều công cụ này tạo ra.
Thuộc tính
XML phân biệt thuộc tính với phần tử con; JSON không có tương đương. Quy ước được dùng rộng rãi là thêm tiền tố @ vào khóa để chỉ rằng nó sẽ trở thành thuộc tính, và công cụ này tuân theo quy ước đó; có thể tắt nếu khóa của bạn thật sự bắt đầu bằng @.
Tên được làm cho hợp lệ
Tên phần tử XML không được chứa dấu cách hoặc hầu hết dấu câu và không được bắt đầu bằng chữ số. Những khóa vi phạm các quy tắc đó sẽ bị thay ký tự không hợp lệ bằng dấu gạch dưới và, khi cần, được thêm một dấu gạch dưới ở đầu. Nếu không, đầu ra sẽ không phân tích được.
Giá trị null
Giá trị null trở thành một phần tử rỗng được đánh dấu xsi:nil, là cách quy ước để nói rằng cố ý để trống chứ không phải thiếu. Nếu chương trình đọc của bạn không hiểu xsi:nil, một phần tử rỗng thường cũng được đọc theo cách tương tự.
Chuyển đi chuyển lại không hoàn toàn chính xác
JSON phân biệt số 42 với chuỗi “42”, còn XML thì không; mọi thứ trong XML đều là văn bản trừ khi một lược đồ quy định khác. Chuyển ngược lại sẽ không khôi phục đáng tin cậy các kiểu dữ liệu ban đầu.
JSON sang XML — câu hỏi thường gặp
Mảng được xử lý như thế nào?
Dưới dạng các phần tử lặp lại, là quy ước XML chuẩn vì XML không có kiểu danh sách.
Tôi có thể tạo thuộc tính không?
Có. Thêm tiền tố @ vào khóa và nó trở thành thuộc tính; tùy chọn này có thể tắt.
Khóa có dấu cách sẽ ra sao?
Các ký tự không hợp lệ được đổi thành dấu gạch dưới, vì tên XML không được chứa chúng. Nếu không, đầu ra sẽ không phân tích được.
Tôi có thể chuyển ngược lại JSON không?
Có, bằng công cụ XML sang JSON, nhưng các kiểu dữ liệu không được giữ nguyên, vì XML không phân biệt số với chuỗi.
Dữ liệu của tôi có được tải lên không?
Không. Việc chuyển đổi diễn ra trong trình duyệt của bạn.