YAML ↔ JSON 변환기

YAML을 JSON으로, JSON을 YAML로 상호 변환합니다. Kubernetes 매니페스트, Docker Compose, GitHub Actions 워크플로 같은 설정 파일을 다룰 때 유용하며, 오류가 있으면 줄/열 위치를 알려줍니다. 서버로 전송하지 않고 브라우저 안에서만 처리됩니다.

입력 YAML
출력 JSON
AD

이 배너는 쿠팡 파트너스 활동의 일환으로 게재되며, 이에 따른 일정액의 수수료를 제공받습니다.

사용 방법

  1. 방향 선택: "YAML → JSON" 또는 "JSON → YAML" 버튼으로 변환 방향을 고르세요.
  2. 입력: 왼쪽 입력창에 붙여넣거나, "파일 열기"로 .yaml/.yml/.json 파일을 업로드하거나 화면에 끌어다 놓으세요. 파일을 열면 확장자에 맞춰 변환 방향이 자동으로 바뀝니다.
  3. 결과 확인: 오른쪽에 변환 결과가 실시간으로 표시됩니다. 오류가 있으면 몇 번째 줄, 몇 번째 열에서 문제가 발생했는지 표시됩니다.
  4. 내보내기: 결과를 클립보드로 복사하거나 파일로 다운로드할 수 있습니다.

모든 변환은 브라우저 내부(JavaScript)에서만 이루어지며, 입력한 데이터는 서버로 전송되거나 저장되지 않습니다.

YAML과 JSON은 어떻게 다른가요?

YAML과 JSON은 같은 데이터 구조(객체, 배열, 문자열, 숫자, 불리언, null)를 표현할 수 있는 서로 호환되는 포맷입니다. JSON은 중괄호와 따옴표로 구조를 명시해 기계가 파싱하기 쉽고, YAML은 들여쓰기와 최소한의 기호로 구조를 표현해 사람이 읽고 쓰기 편합니다. 그래서 Kubernetes, Docker Compose, GitHub Actions, Ansible 같은 설정 파일은 대부분 YAML을 쓰고, API 응답이나 프로그램 간 데이터 교환은 대부분 JSON을 씁니다. 사실 모든 JSON은 그 자체로 유효한 YAML이기도 합니다(YAML 1.2는 JSON의 상위 집합입니다).

자주 묻는 질문

입력한 데이터가 외부로 전송되나요?

아니요. 모든 파싱과 변환은 브라우저 안에서 JavaScript로만 처리되며 서버로 전송되지 않습니다.

YAML의 앵커(&)와 별칭(*)도 지원하나요?

네. YAML → JSON 변환 시 앵커/별칭으로 참조된 내용이 실제 값으로 펼쳐져(resolve) JSON에 반영됩니다. 다만 JSON → YAML 방향에서는 반복되는 구조를 앵커로 압축하지 않고 매번 전체 값을 그대로 풀어서 씁니다.

여러 문서(---로 구분된 멀티 도큐먼트)도 지원하나요?

아니요. 이 도구는 YAML 파일 하나에 문서 하나만 있다고 가정합니다. ---로 여러 문서가 이어진 파일은 첫 번째 문서만 변환됩니다.

주석은 어떻게 처리되나요?

YAML의 # 주석은 JSON에 대응하는 문법이 없어 YAML → JSON 변환 시 사라집니다. 반대로 JSON → YAML 변환은 주석이 없는 순수 데이터만 출력합니다.

왜 "bad indentation" 같은 오류가 나오나요?

YAML은 들여쓰기로 구조를 표현하기 때문에 탭과 스페이스가 섞이거나 들여쓰기 폭이 일정하지 않으면 오류가 발생합니다. 오류 메시지에 표시된 줄/열 번호 부근의 들여쓰기를 확인하세요.