XML을 JSON으로
규칙이 적혀 있어서 놀랄 일이 없습니다.
출력
위에 붙여넣거나 입력하면 여기에 결과가 표시됩니다.
파일은 내 기기 밖으로 나가지 않습니다
이 도구는 브라우저 안에서만 작동합니다. 붙여넣은 내용은 기기에서 처리되고 서버로 전송되지 않으므로 토큰, 키, 공개 전 문서도 안심하고 사용할 수 있습니다.
사용 방법
- XML을 붙여넣습니다.
- 루트 요소를 바깥 키로 남길지 고릅니다.
- JSON을 읽습니다. 속성은 @name, 그냥 텍스트는 #text로 나타납니다.
- 복사합니다.
자주 묻는 질문
- 속성은 어떻게 되나요?
- 앞에 @가 붙은 키가 됩니다. <a id="1">text</a>는 {"@id": "1", "#text": "text"}가 됩니다. JSON에는 속성을 표현할 방법이 없어서 변환기마다 관행을 정하는데, 여기서는 대부분이 정착한 방식을 씁니다.
- 어떤 요소만 배열이 된 이유는?
- XML에는 “이건 한 건짜리 목록이다”라고 적을 방법이 없기 때문입니다. 같은 부모 안에 같은 이름이 두 번 나오면 배열이 되고, 한 번이면 단일 값으로 남습니다. 받는 쪽이 늘 배열을 기대한다면 양쪽을 다 처리해야 합니다. 이 모호함은 변환이 아니라 XML 쪽에 있습니다.
- 숫자는 숫자가 되나요?
- 되지 않습니다. 전부 문자열로 나옵니다. XML에는 타입이 없고, 추측하면 1.10 같은 버전 번호가 1.1이 되거나 앞자리 0이 사라지는 고전적인 버그가 생깁니다.
- CDATA와 엔티티는요?
- 엔티티는 디코딩합니다(&는 &가 됩니다). CDATA는 안의 텍스트로 나옵니다. 주석과 처리 명령은 JSON에 둘 자리가 없어 버립니다.
- 서버로 전송되나요?
- 아니요. 브라우저 안에서만 동작하므로 입력한 내용은 컴퓨터를 벗어나지 않습니다.