DevToolPal
한국어

XML JSON 변환기

브라우저에서 XML을 JSON으로 변환합니다. 속성, 텍스트, 반복 요소를 보존하고 오류 위치를 정확히 알려 줍니다.

로컬에서 실행, 업로드 없음

옵션

입력

0자 · 0 B

출력

0자 · 0 B

기능 소개

이 도구는 XML 문서를 JSON으로 바꿉니다. 요소는 객체 키가 되고, 속성은 접두사가 붙은 키가 되며, 요소 안의 텍스트는 그 값이 되고, 반복되는 형제 요소는 배열이 됩니다. 변환 전에 XML의 유효성을 검사하므로, 태그가 닫히지 않았거나 속성이 잘못된 경우 정확한 행과 열을 확인할 수 있습니다.

사용 방법

  1. 입력 상자에 XML을 붙여 넣거나, .xml 파일을 업로드하거나 끌어다 놓거나, 예시를 클릭합니다.
  2. 입력하는 동안 JSON이 오른쪽에 나타납니다.
  3. 옵션을 조정합니다.
    • 들여쓰기: 공백 2칸 또는 4칸, 탭, 또는 압축 출력.
    • 속성 접두사: 속성을 나타내는 표시로, 기본값은 @입니다. 비워 두면 속성을 무시합니다.
    • 숫자와 불리언 변환: 42나 true 같은 텍스트를 실제 JSON 숫자와 불리언으로 바꿉니다.
    • 항상 배열 사용: 모든 자식 요소를 배열로 감싸 구조를 예측할 수 있게 합니다.
  4. 결과를 복사하거나 .json 파일로 다운로드합니다.

예시

<book id="bk101">
  <title lang="en">XML Developer's Guide</title>
  <tag>xml</tag>
  <tag>programming</tag>
</book>

위 XML은 다음과 같이 바뀝니다.

{
  "book": {
    "title": { "#text": "XML Developer's Guide", "@lang": "en" },
    "tag": ["xml", "programming"],
    "@id": "bk101"
  }
}

참고

XML 선언(<?xml ...?>)과 처리 명령은 JSON에 포함되지 않습니다. 주석은 무시됩니다. 텍스트 앞뒤의 공백은 제거됩니다.

자주 묻는 질문

› XML 속성은 JSON에서 어떻게 표현되나요?

속성 접두사(기본값 "@")로 시작하는 키로 표현됩니다. 예를 들어 <price currency="USD">44.95</price>는 { "@currency": "USD", "#text": "44.95" }가 됩니다. 속성을 완전히 빼려면 접두사 입력란을 비우세요.

› 요소가 어떤 때는 배열이고 어떤 때는 객체인 이유는 무엇인가요?

반복되는 요소는 배열이 되고, 하나뿐인 요소는 일반 값으로 남습니다. 코드에서 매번 같은 구조를 기대한다면 "항상 배열 사용"을 켜세요.

› 숫자도 변환되나요?

기본적으로는 변환하지 않습니다. 우편번호나 앞자리가 0인 ID 같은 값이 바뀔 수 있기 때문입니다. "42" 대신 42, "true" 대신 true를 얻으려면 "숫자와 불리언 변환"을 켜세요.

› XML이 업로드되나요?

아니요. 파싱은 브라우저에서 이루어집니다.