본문으로 건너뛰기

YAML을 JSON으로 안전하게 변환

YAML 문서 하나를 붙여넣어 유효한 들여쓰기 JSON을 만드세요. YAML 2.9 파서를 사용하며 모호하거나 JSON으로 나타낼 수 없는 구조를 몰래 바꾸지 않고 거부해요.

YAML 입력

브라우저에서 처리해요.

문서 하나, 최대 200,000자예요. 데이터는 브라우저 안에 머물러요.

결과

YAML을 JSON으로 변환하는 방법

문서 변환

  1. 완전한 YAML 문서를 붙여넣으세요.
  2. JSON 들여쓰기를 공백 두 칸이나 네 칸으로 고르세요.
  3. JSON으로 변환을 누르고 오류가 있으면 행·열 위치를 보고 수정하세요.
  4. 결과를 검토한 뒤 복사하거나 yaml-output.json을 다운로드하세요.

변환·안전 규칙

매핑은 JSON 객체, 시퀀스는 배열이 되며 일반 문자열, 유한수, 불리언과 null은 해당 JSON 값으로 유지해요.

매핑 키가 중복되면 앞 값을 덮어쓰지 않고 변환을 멈춰요. JSON 결과 하나로 문서 경계를 유지할 수 없어 여러 YAML 문서도 거부해요.

명시 태그와 별칭을 거부해 앱별 객체 생성, 공유 참조와 JSON으로 표현할 수 없는 순환을 막아요. 안전한 정수는 JSON 숫자로 출력하며 너무 큰 정수, NaN과 무한대는 거부해요.

예시

name: mouse active: true items: - cheese - crackers는 불리언과 JSON 배열을 포함한 객체로 변환돼요.

두 번째 name 키, ---로 시작하는 두 번째 문서, !!custom 태그나 *alias 참조는 부분 출력 대신 구체적인 오류를 보여 줘요.

한계

  • 입력 한도는 파싱 전 저장된 UTF-16 문자 수로 재요. 문서 전체가 검증을 통과한 뒤에만 결과를 만들어요.
  • JSON을 YAML로 되돌리거나 URL을 가져오고 사용자 스키마를 해석하거나 YAML 주석·표현 스타일을 보존하지 않아요.

YAML·JSON 변환 자주 묻는 질문

별칭을 거부하는 이유는 무엇인가요?

JSON에는 공유 참조나 별칭 문법이 없어요. 펼치면 거대하거나 순환하는 구조가 생길 수도 있어 이 도구는 거부해요.

중복 키를 거부하는 이유는 무엇인가요?

JSON을 읽는 프로그램마다 어떤 중복을 선택하는지 달라요. 멈추면 의미가 조용히 바뀌는 일을 피할 수 있어요.

날짜를 자동 변환하나요?

사용자 정의 날짜 변환을 보장하지 않아요. 일반 코어 스키마 문자열은 문자열로 유지하고 명시 태그는 거부해요.

YAML을 업로드하나요?

아니요. 파싱, 복사와 파일 생성은 브라우저에서 해요.