JSON을 XML로 변환

무료 온라인 JSON to XML 도구입니다. JSON 객체는 <root>, 배열은 <root><item> 구조로 감싸고, 읽기 좋은 XML을 브라우저 안에서 바로 생성합니다.

관련 추천

JSON to XML 소개: JSON 데이터를 표준 XML 로 변환

JSON to XML 변환은 JSON 데이터를 XML 문서 형태로 옮기는 작업입니다. SOAP 나 기업 통합에서는 여전히 XML 이 많이 쓰입니다.

이 도구는 xmlbuilder2 를 사용해 JSON key 를 XML 요소 이름으로, value 를 요소 텍스트로 바꿉니다.

배열은 XML 에 기본 배열 타입이 없기 때문에 <item> 반복 노드로 표현하고, 바깥쪽은 <root> 로 감쌉니다.

prettyPrint 가 기본으로 켜져 있어 결과가 들여쓰기와 줄바꿈을 포함한 읽기 쉬운 XML 로 나옵니다.

숫자와 불리언은 XML 에서 문자열처럼 표현됩니다. 타입을 엄격히 유지하려면 XSD 같은 schema 를 함께 써야 합니다.

모든 처리가 브라우저 안에서 끝나므로 민감한 JSON 도 서버 업로드 없이 XML 로 바꿀 수 있습니다.

사용 사례

  • REST API JSON 응답을 XML 만 받는 기업 시스템으로 전달.
  • SOAP 메시지 body 에 넣을 XML payload 준비.
  • JSON 설정에서 RSS 나 sitemap.xml 생성 전처리.
  • JSON fixture 를 XML 로 바꿔 레거시 XML 코드 테스트.
  • JSON 과 XML 매핑 관계를 설명하는 학습 자료로 활용.

이용 방법

  1. 왼쪽에 JSON 을 붙여넣거나 .json/.txt 파일을 업로드합니다.
  2. 약 400ms 후 오른쪽에 XML 이 자동 생성됩니다.
  3. 필요하면 Format 버튼으로 JSON 을 정리합니다.
  4. XML 을 복사하거나 output.xml 로 저장합니다.
  5. 필요한 경우 root 이름이나 namespace 를 수동 수정합니다.

주요 기능

  • 객체는 <root>, 배열은 <root><item> 으로 자동 래핑.
  • xmlbuilder2 기반 prettyPrint 출력.
  • 입력 후 약 400ms 안에 자동 변환.
  • tryFixJSON 으로 흔한 JSON 오류 복구.
  • 깊은 중첩 구조도 재귀적으로 변환.
  • JSON/XML 문법 하이라이트 지원.
  • 복사, 다운로드, 히스토리 복원 지원.
  • 모든 처리를 브라우저 안에서만 수행.

자주 묻는 질문

JSON을 XML로 어떻게 바꾸나요?

왼쪽 입력창에 JSON을 붙여넣으면 표준 XML로 자동 변환됩니다. 객체는 <root>, 배열은 <root><item>...</item></root> 구조로 출력되며 약 400ms 뒤 결과가 갱신됩니다.

JSON 배열은 XML에서 어떻게 표현되나요?

배열은 바깥쪽 <root> 와 반복되는 <item> 노드로 감싸집니다. SOAP나 RSS 같은 XML 데이터 교환 패턴과 잘 맞습니다.

생성된 XML은 정렬되어 나오나요?

네. xmlbuilder2 의 prettyPrint 모드로 들여쓰기와 줄바꿈이 포함된 XML을 생성합니다.

어떤 JSON 구조를 지원하나요?

null, boolean, number, string, 중첩 객체와 여러 단계 배열을 지원합니다. 함수나 undefined 는 변환할 수 없습니다.

JSON 파싱이 실패하면 어떻게 하나요?

후행 쉼표, 작은따옴표 같은 흔한 문제는 tryFixJSON 이 자동으로 복구를 시도합니다. 실패하면 오류 위치와 원인을 보여줍니다.

루트 이름을 바꿀 수 있나요?

기본값은 root 와 item 입니다. 다른 이름이 필요하면 생성된 XML을 편집하거나 JSON 을 한 단계 감싸서 조정하세요.

namespace 나 attribute 를 지원하나요?

자동으로 넣어주지는 않습니다. 필요하면 생성된 XML을 수동 편집해야 합니다.

입력 파일과 단축키는 무엇인가요?

.json 과 .txt 를 읽을 수 있고, 변환/포맷/업로드/다운로드/초기화 단축키를 지원합니다.

문제 해결

root 이름을 바꿀 수 있나요?

자동으로는 안 됩니다. 출력 후 치환하거나 JSON 을 한 단계 감싸서 조정하세요.

XML 에서 unclosed token 오류가 납니다

입력 문자열 안의 < 또는 & 가 원인일 수 있습니다. 보통 자동 이스케이프되지만 원본 값도 확인하세요.

item 대신 다른 배열 태그를 쓰고 싶어요

생성된 XML 에서 <item> 을 일괄 치환하는 방식이 가장 간단합니다.

숫자가 문자열로 바뀝니다

XML 에는 기본 숫자 타입이 없기 때문입니다. 필요하면 XSD 로 타입을 보완하세요.

한글이나 emoji 가 있어도 괜찮나요?

네. UTF-8 과 Unicode 를 지원하므로 정상적으로 변환됩니다.

용어집

JSON (JavaScript Object Notation)
객체와 배열을 표현할 수 있는 가벼운 데이터 교환 형식입니다.
XML (eXtensible Markup Language)
태그 구조로 데이터를 표현하는 확장형 마크업 언어입니다.
xmlbuilder2
XML 문서를 만드는 JavaScript 라이브러리이며 이 도구의 핵심 엔진입니다.
Node wrapping (root / item)
이 도구는 객체를 root, 배열 요소를 item 으로 감싸는 규칙을 씁니다.
prettyPrint
XML 에 들여쓰기와 줄바꿈을 넣어 읽기 좋게 만드는 출력 모드입니다.
SOAP (Simple Object Access Protocol)
XML 기반 웹 서비스 통신 규약으로 기업 시스템에서 자주 사용됩니다.
XPath
XML 문서 안의 노드를 경로로 찾는 질의 언어입니다.
tryFixJSON
흔한 JSON 문법 오류를 자동으로 고쳐 보려는 내장 루틴입니다.

JSON to XML 매핑 규칙

이 도구가 사용하는 기본 변환 규칙입니다.

JSON 값예시XML 요소규칙
string"Alice"<name>Alice</name>문자열을 그대로 요소 텍스트로 사용
number30<age>30</age>숫자를 문자열 형태로 출력
booleantrue<isActive>true</isActive>true/false 문자열로 변환
object{"a":1}<root><a>1</a></root>객체를 <root> 로 감싸고 key 를 자식 요소로 변환
array[{"a":1}]<root><item><a>1</a></item></root>배열을 <item> 반복 노드로 변환
nested object{"user":{"name":"x"}}<root><user><name>x</name></user></root>중첩 구조를 재귀적으로 전개

JSON 과 XML 비교

JSON 과 XML 중 어떤 형식을 쓸지 판단할 때 보는 차이입니다.

항목JSONXML메모
문법{ } : [ ] 간결< > </> 장황JSON 은 짧고 XML 은 태그 덕분에 구조가 눈에 잘 보입니다.
타입number/bool/null 유지대부분 문자열XML 은 schema 로 타입을 보완하는 경우가 많습니다.
배열네이티브 배열반복 요소XML 은 명명 규칙으로 리스트를 표현합니다.
네임스페이스없음xmlns 지원SOAP 같은 큰 문서에서 중요합니다.
스키마 검증JSON SchemaXSD / DTD둘 다 성숙한 검증 체계를 가집니다.
주요 용도REST API, WebSOAP, 기업 연동현대 웹은 JSON, 기존 업무 시스템은 XML 이 많습니다.

XML 특수 문자 이스케이프

JSON 문자열 안의 XML 특수 문자를 자동 변환하는 규칙입니다.

특수 문자XML 엔터티JSON 예시XML 출력
<&lt;"<"<field>&lt;</field>
>&gt;">"<field>&gt;</field>
&&amp;"&"<field>&amp;</field>
"&quot;"\""<field>&quot;</field>
'&apos;"'"<field>&apos;</field>

Privacy & Security

이 JSON to XML 도구는 JSON 파싱, XML 생성, prettyPrint 정렬을 모두 브라우저 JavaScript 에서 수행합니다. 입력한 JSON, 업로드한 파일, 생성된 XML 은 서버로 전송되지 않습니다. 로컬 FileReader 로 파일을 읽고, 사용자 입력이나 사용 데이터를 수집하지 않습니다. 민감한 API 응답이나 사내 데이터 처리에도 적합합니다.

Authoritative References