달달툴즈

XML ↔ JSON 변환

XML 을 JSON 으로, JSON 을 XML 로 바꿉니다. 속성과 글값을 어떤 이름으로 담을지 정할 수 있습니다.

브라우저에서만 처리무료 이용

앞에 0 이 붙은 값은 글로 둡니다. 우편번호가 망가지지 않게요.

어떤 모양으로 바뀌나

  • <a>1</a> → "a": "1"
  • <a id="1">x</a> → "a": { "@id": "1", "#text": "x" }
  • <item> 이 둘이면 → "item": [ … ]
  • <a/> → "a": ""

파일은 서버로 전송되지 않고 브라우저에서만 처리됩니다.

사용 방법

가입도 설치도 없이, 사용 횟수 제한도 없이 무료로 쓸 수 있습니다.

XML 을 붙여 넣으면 JSON 이 나오고, 방향을 바꾸면 반대로 갑니다. 둘 다 입력하는 동안 따라 바뀝니다.

아직 XML 로 말하는 곳이 많습니다. 예전에 만든 기업용 API, 은행·관공서 연계, RSS, SOAP 응답, 그리고 모든 오피스 파일이 zip 껍데기 안에서 XML 입니다. 그것을 요즘 코드에서 다루려면 대개 먼저 바꿔 놓아야 합니다.

속성도 자식도 없는 요소는 값 하나로 줄입니다. 이 규칙이 없으면 모든 잎이 객체가 되어 읽기도 번거롭고 그 위에 코드를 쓰기는 더 번거롭습니다.

같은 이름이 두 번 나오면 배열이 됩니다. 덮어쓰면 마지막 하나만 남고 나머지가 조용히 사라지는데, 시험할 때 목록에 항목이 하나뿐이어서 몇 주 뒤에야 드러나는 종류의 버그입니다.

속성에는 표시를 붙이고 글값은 따로 칸을 둡니다. XML 은 한 요소가 둘 다 가질 수 있지만 JSON 은 이름 하나에 자리가 하나뿐이기 때문입니다. 자료의 이름과 부딪히면 두 표시 모두 바꿀 수 있습니다.

숫자로 바꾸기는 꺼 두었습니다. 우편번호 01234 는 숫자가 되면 1234 가 되고, 판 번호 1.10 은 1.1 이 됩니다. 뒤에서 무언가 깨지기 전까지는 보이지 않는 손실입니다.

건너오지 못하는 것도 있습니다. XML 은 같은 이름의 자식을 정해진 차례로 여럿 둘 수 있지만 JSON 객체에는 차례가 없습니다. 왕복이 믿을 만한 것은 자료이지, 생김새가 중요한 문서가 아닙니다.

붙여넣은 값은 서버로 전송되지 않습니다. 브라우저 안에서 읽습니다.

이런 도구도 함께 씁니다