YAML ↔ JSON 변환기
YAML과 JSON 형식을 상호 변환합니다. 중첩 객체, 배열, 멀티라인 문자열을 지원합니다.
YAML ↔ JSON 변환기란?
YAML과 JSON은 현대 소프트웨어 개발에서 가장 많이 사용되는 데이터 직렬화 형식입니다. YAML은 들여쓰기 기반의 간결한 문법으로 Kubernetes, Docker Compose, GitHub Actions 등 DevOps 설정 파일에 널리 쓰이고, JSON은 가볍고 파싱이 빠른 구조로 REST API와 웹 애플리케이션의 표준 데이터 형식이 되었습니다. 이 도구를 사용하면 브라우저에서 바로 두 형식 간 변환을 수행할 수 있어, 별도 라이브러리 설치나 코딩 없이도 작업이 가능합니다.
무엇을 할 수 있나요?
- YAML에서 JSON으로, JSON에서 YAML로 양방향 변환
- 들여쓰기 크기 선택 (2칸 또는 4칸)
- 입력 형식 자동 감지 기능
- 중첩 객체, 배열, 멀티라인 문자열 완벽 지원
- 문법 오류 발생 시 상세한 에러 메시지 표시
- 샘플 데이터로 빠른 테스트 가능
- Ctrl+Enter 단축키로 빠른 변환
- 결과 원클릭 복사
사용 가이드
- 왼쪽 YAML 영역 또는 오른쪽 JSON 영역에 데이터를 입력합니다.
- 'YAML → JSON' 또는 'JSON → YAML' 버튼을 클릭합니다.
- 자동 감지가 활성화되어 있으면 입력 형식을 자동으로 인식합니다.
- 들여쓰기 크기(2 또는 4 스페이스)를 원하는 대로 조절합니다.
- 변환 결과는 복사 버튼으로 클립보드에 바로 복사할 수 있습니다.
추천 활용법
- Kubernetes 매니페스트(YAML)를 JSON 형식 API로 전달할 때
- Docker Compose 파일 내용을 JSON으로 변환해 프로그래밍적으로 처리할 때
- GitHub Actions 워크플로우 설정을 검증하거나 디버깅할 때
- Ansible Playbook을 다른 자동화 도구의 JSON 입력으로 변환할 때
- CI/CD 파이프라인 설정을 팀원과 공유하기 위해 형식을 통일할 때
- REST API 응답(JSON)을 사람이 읽기 쉬운 YAML로 정리할 때
참고사항
- YAML에서 탭(Tab) 문자는 사용할 수 없습니다. 반드시 스페이스를 사용하세요.
- YAML의 문자열 값 중 숫자처럼 보이는 것(예: "0123")은 따옴표로 감싸야 문자열로 유지됩니다.
- JSON에서 YAML로 변환 시, 이스케이프된 유니코드 문자는 그대로 보존됩니다.
- 빈 값이 있는 경우 YAML에서는 null, JSON에서는 null로 변환됩니다.
- 복잡한 앵커(&)와 별칭(*) 문법은 JSON 변환 시 참조가 해제되어 값이 복사됩니다.
Q&A
Q: YAML과 JSON의 핵심 차이점은 무엇인가요?
YAML은 들여쓰기로 구조를 표현하며 주석(#)을 지원합니다. JSON은 중괄호와 대괄호로 구조를 나타내며 주석을 지원하지 않습니다. YAML은 사람이 읽고 쓰기 편하고, JSON은 기계가 파싱하기 빠릅니다.
Q: 멀티라인 문자열은 어떻게 변환되나요?
YAML의 리터럴 블록(|)은 줄바꿈을 보존하고, 접힌 블록(>)은 줄바꿈을 공백으로 치환합니다. JSON에서는 \n으로 이스케이프된 문자열로 표현되며, 역방향 변환 시에도 적절히 처리됩니다.
Q: YAML 주석은 변환 후 어떻게 되나요?
YAML의 주석(#)은 JSON으로 변환할 때 제거됩니다. JSON 표준에 주석 기능이 없기 때문이며, JSON에서 YAML로 변환할 때 주석이 자동으로 추가되지는 않습니다.
Q: YAML의 특수 타입(날짜, boolean)은 어떻게 처리되나요?
YAML은 yes/no, on/off를 boolean으로, 날짜 형식을 Date 객체로 자동 인식합니다. JSON 변환 시 boolean은 true/false로, 날짜는 문자열로 변환됩니다. 원치 않는 타입 변환을 방지하려면 따옴표로 값을 감싸세요.
Q: 들여쓰기 크기는 결과에 어떤 영향을 주나요?
들여쓰기 크기(2칸 또는 4칸)는 출력의 가독성에만 영향을 줍니다. 데이터 내용 자체는 변하지 않으며, 팀이나 프로젝트의 코딩 컨벤션에 맞게 선택하면 됩니다.
Q: 자동 감지 기능은 어떻게 작동하나요?
입력 데이터의 첫 문자와 패턴을 분석합니다. 중괄호나 대괄호로 시작하면 JSON으로, 콜론과 들여쓰기 패턴이 있으면 YAML로 인식합니다.
Q: 변환 시 데이터가 손실될 수 있나요?
YAML 주석은 JSON 변환 시 손실되고, YAML의 앵커/별칭은 값으로 풀어집니다. 그 외 일반적인 데이터 구조는 손실 없이 변환됩니다.
Q: 문법 오류가 있으면 어떻게 되나요?
잘못된 YAML이나 JSON을 입력하면 에러 메시지가 표시됩니다. 오류 위치와 내용을 확인하여 수정한 후 다시 변환하세요.
Q: 데이터가 서버로 전송되나요?
아니요. 모든 변환 과정은 브라우저 내에서 로컬로 처리됩니다. 입력 데이터가 외부 서버로 전송되거나 저장되는 일은 없습니다.
Q: 단축키가 있나요?
네. YAML 입력 영역에서 Ctrl+Enter를 누르면 YAML에서 JSON으로, JSON 입력 영역에서 Ctrl+Enter를 누르면 JSON에서 YAML로 즉시 변환됩니다.