WebTools

Useful Tools & Utilities to make life easier.

JSON To Xml

JSON 데이터를 계층 구조의 XML 형식으로 변환합니다.

서식 옵션

JSON To Xml

JSON 데이터를 계층 구조의 XML 형식으로 변환합니다.

JSON → XML 변환기란?

JSON → XML 변환기는 중괄호와 대괄호로 이루어진 JSON 데이터를 여는 태그와 닫는 태그가 짝을 이루는 XML 문서로 바꿔 주는 도구입니다. JSON은 웹 API에서 널리 쓰이지만, 오래된 사내 시스템이나 은행·관공서 연동, 일부 설정 파일, SOAP 방식의 서비스는 여전히 XML을 요구하는 경우가 많습니다. 이때 데이터를 손으로 태그로 옮겨 적는 대신, 이 도구에 JSON을 붙여 넣으면 같은 내용을 XML 구조로 다시 써 줍니다.

같은 데이터라도 두 포맷은 표현 방식이 다릅니다. JSON은 "name": "홍길동"처럼 키와 값을 콜론으로 잇지만, XML은 <name>홍길동</name>처럼 값을 태그로 감쌉니다. 중첩된 객체는 하위 태그로, 배열의 각 항목은 별도의 요소로 펼쳐집니다. 즉 이 변환기는 계층(트리) 구조는 유지하면서 표기법만 태그 방식으로 바꾸는 일을 합니다.

사용 방법

  1. 입력칸에 변환할 JSON을 붙여 넣습니다. 객체({ })나 배열([ ]) 모두 됩니다.
  2. 루트 요소(root element) 이름을 정합니다. XML은 최상위 태그가 하나여야 하므로 기본값은 root입니다.
  3. 필요하면 인코딩(UTF-8 등), 들여쓰기 크기(2·4·8칸), 줄맞춤(pretty print) 여부를 선택합니다.
  4. 변환 버튼을 누르면 아래에 XML 결과가 나오고, 복사로 가져다 쓸 수 있습니다.

변환 예시와 규칙

아래는 짧은 JSON이 XML로 바뀌는 모습입니다. 루트 요소를 user로 지정한 경우입니다.

입력 (JSON)출력 (XML)
{
  "name": "홍길동",
  "age": 30,
  "tags": ["a", "b"]
}
<user>
  <name>홍길동</name>
  <age>30</age>
  <tags>a</tags>
  <tags>b</tags>
</user>

변환 과정에서 지켜지는 규칙은 다음과 같습니다.

상황처리 방식
중첩 객체하위 태그로 한 단계 더 들어가 표현
배열같은 이름의 태그가 항목 수만큼 반복
키가 숫자일 때XML 태그명은 숫자로 시작할 수 없어 item0, item1 형태로 바뀜
태그로 못 쓰는 문자영문·숫자·-·_·. 외 문자는 태그명에서 제거
값에 < > & 포함깨지지 않도록 CDATA로 감싸 보관

자주 묻는 질문

루트 요소는 왜 꼭 정해야 하나요?

XML 문서는 규칙상 최상위 태그가 반드시 하나여야 합니다. JSON은 배열이나 여러 값을 바로 담을 수 있지만 XML은 그렇지 않기 때문에, 전체를 감쌀 바깥 태그 이름이 필요합니다. 기본값 root를 그대로 써도 되고, user·orders처럼 데이터 성격에 맞는 이름으로 바꾸면 결과가 더 읽기 좋습니다.

한글 값이 이상한 문자로 바뀌지 않을까요?

인코딩을 UTF-8로 두면 한글이 그대로 유지됩니다. ISO-8859-1이나 ASCII는 서유럽 문자나 영문 위주 환경을 위한 선택지이므로, 한글이 섞인 데이터라면 UTF-8을 권합니다.

결과 XML을 다시 JSON으로 되돌릴 수 있나요?

네. 반대 방향은 XML → JSON 변환기를 쓰시면 됩니다. 다만 JSON → XML → JSON을 오가면 배열이 반복 태그로 펼쳐졌다가 다시 묶이는 과정에서 표현이 미세하게 달라질 수 있으니, 되돌린 결과는 한 번 확인해 보는 것이 좋습니다.

표(스프레드시트)로 쓰려면 XML이 맞나요?

표 형태로 엑셀 등에서 열어 보려는 목적이라면 XML보다 CSV가 적합합니다. 그럴 때는 JSON → CSV 변환기를 쓰세요. XML은 태그 계층으로 설정·연동 데이터를 표현할 때, CSV는 행과 열의 표 데이터를 다룰 때 각각 어울립니다.

더 알아보기

JSON의 기본 구조와 키·값 표기, 자주 나는 쉼표·따옴표 오류를 처음부터 정리한 내용은 JSON 포맷터 가이드에서 이어서 볼 수 있습니다. 변환 전에 JSON 문법이 올바른지 먼저 확인하면, 태그로 바꿀 때 오류 없이 한 번에 처리됩니다.