JSON YAML 변환
JSON을 사람이 읽고 검토하고 주석을 달 수 있는 YAML로 다시 쓰십시오. .json 파일을 업로드하면 키, 값, 순서가 같은 들여쓴 .yaml 파일을 받아 바로 저장소에 넣을 수 있습니다.
데이터 변환
또는 CSV, TSV, TXT … 파일을 여기에 끌어다 놓으세요 ·
파일당 최대 95 MB· 최대 20개 파일· 30분 뒤 삭제
파일은 UltKit 서버에서 처리되며 30분 뒤 삭제됩니다.
CSV와 텍스트 파일에서 열을 나누는 문자로, 읽기와 쓰기에 모두 쓰입니다. 자동은 입력에서 감지하고 쉼표로 씁니다.
UTF-8은 모든 언어에 쓸 수 있습니다. Windows의 Excel에서 CSV를 열 때 악센트 문자나 아시아 문자가 깨지면 BOM 포함 UTF-8을 선택하십시오.
Excel, ODS, Numbers 입력은 첫 시트만 변환하거나 모든 시트를 변환합니다(ZIP 안에 시트마다 CSV 하나, 또는 시트마다 JSON 키 하나).
새 스프레드시트의 시트 탭 이름으로, 최대 31자입니다.
객체 배열은 모든 행에 열 이름을 키로 쓰고, 배열의 배열은 더 간결하며 머리글을 첫 배열로 유지합니다.
모든 행을 감싸는 바깥 요소의 이름이며, 각 행은 그 안의 <row>가 됩니다.
CREATE TABLE과 INSERT 문에 쓰입니다. 영문자, 숫자, 밑줄만 사용할 수 있습니다.
따옴표 처리와 열 유형은 데이터베이스마다 조금씩 다릅니다. 가져올 데이터베이스를 고르십시오.
날짜 셀을 한 가지 형식으로 다시 씁니다. 데이터베이스와 코드에는 ISO (2026-10-18)가 가장 안전하며, 그대로 유지는 원본에 보이는 대로 둡니다.
사용 방법
- 1
JSON 파일 추가
API 응답, 내보낸 설정, 생성된 매니페스트를 .json으로 최대 20개, 파일당 95 MB까지 업로드하십시오. 각 파일에는 올바른 JSON 값이 하나 들어 있어야 합니다.
- 2
기본값 그대로 두기
변환할 형식에는 이미 YAML이 선택되어 있습니다. 설정 파일이라면 더 바꿀 것이 없으며, 출력은 공백 2칸 들여쓰기를 씁니다.
- 3
변환 후 커밋
YAML로 변환을 누르고 .yaml 파일을 다운로드한 뒤, 다음 사람이 알아야 할 곳에 주석을 달고 커밋하십시오.
JSON을 YAML로 변환하려면 어떻게 합니까?
.json 파일을 업로드하고 YAML로 변환을 누르십시오. 객체는 들여쓴 key: value 블록이 되고, 배열은 대시 목록이 되며, YAML이 잘못 읽을 수 있는 문자열은 따옴표를 유지합니다.
설정 파일용으로 JSON을 YAML로 변환하는 이유
JSON은 대부분 소프트웨어가 만듭니다. API 응답, 설정 내보내기, 생성기의 출력이 그렇습니다. YAML은 대부분 사람이 관리합니다. 그래서 이 변환은 대개 데이터가 기계 출력에서 팀이 소유하는 파일로 바뀌는 순간에 일어납니다. Git에 커밋하는 배포 매니페스트, CI 파이프라인, Ansible 변수 묶음이 그런 예입니다.
흔한 경우를 들어 보겠습니다. 클라우드 API를 호출해 리소스를 설명하는 200줄짜리 JSON을 받았고, 이를 인프라 코드로 보관하려 합니다. 변환하면 중괄호와 쉼표가 없는 파일이 되어 한 줄을 고치면 diff도 한 줄로 나오고, 특이한 값은 주석으로 설명할 수 있습니다. 개발자가 아닌 사람이 수정하는 테스트 픽스처와 번역 파일도 마찬가지입니다. 스프레드시트나 보고서용으로 평면 표가 필요하다면 JSON CSV 변환이 더 잘 맞습니다.
설정 파일이 YAML인 도구
| 기관 | 요구 사항 | 출처 |
|---|---|---|
| GitHub Actions | 워크플로는 .github/workflows에 .yml 또는 .yaml 파일로 저장됩니다 | GitHub 문서 |
| GitLab CI/CD | 파이프라인은 저장소 루트의 .gitlab-ci.yml에 정의됩니다 | GitLab 문서 |
| Docker Compose | 서비스는 compose.yaml(이전 이름 docker-compose.yml)에 기술됩니다 | Docker 문서 |
| Ansible | 플레이북과 변수 파일을 YAML로 작성합니다 | Ansible 문서 |
| Kubernetes | 매니페스트는 JSON과 YAML을 모두 받지만 문서와 Helm 차트는 YAML을 씁니다 | Kubernetes 공식 사이트 |
까다로운 값이 있는 JSON YAML 변환 예시
name: api version: "1.10" debug: false tags: - 웹 - 유럽 country: "NO"
YAML의 장점
- #으로 주석 작성
- 코드 리뷰에서 더 짧은 diff
- 대부분의 줄에 중괄호, 쉼표, 따옴표가 없음
- | 블록 스칼라로 여러 줄 텍스트 작성
주의할 점
- 들여쓰기가 의미를 가지므로 공백 하나로 구조가 바뀜
- 들여쓰기에 탭을 쓸 수 없음
- 따옴표 없는 문자열이 숫자나 논리값으로 읽힐 수 있음
- JSON보다 파서가 느리고 동작이 제각각임
이 예시는 중괄호를 단순히 찾아 바꾸는 것만으로는 부족한 이유를 보여 줍니다. 버전 1.10은 JSON에서 문자열인데, YAML에 따옴표 없이 쓰면 숫자 1.1로 읽힙니다. 노르웨이의 ISO 코드 NO는 PyYAML 같은 YAML 1.1 파서에서 false로 읽힙니다. 두 값 모두 따옴표를 유지하고, 진짜 숫자와 논리값은 따옴표 없이 남습니다.
JSON과 YAML 비교
JSON
JavaScript 객체 표기법(JSON)
JSON은 구조화된 데이터를 위한 가벼운 텍스트 형식으로, 2000년대 초 Douglas Crockford가 널리 알렸고 RFC 8259와 ECMA-404로 표준화되었습니다. 객체, 배열, 문자열, 숫자, 불리언, null을 간단하고 읽기 쉬운 문법으로 표현합니다. 거의 모든 프로그래밍 언어에서 웹 API, 설정 파일, 앱 간 데이터 교환의 기본 형식으로 쓰입니다. 주석, 날짜, 스키마가 기본으로 들어 있지 않고, 깊게 중첩된 큰 파일은 뷰어 없이 읽기 어렵습니다.
- 압축 방식
- –
- 투명도
- –
- 애니메이션
- –
- 도입 연도
- 2001 · Douglas Crockford
YAML
YAML
YAML("YAML Ain't Markup Language")은 2001년에 처음 공개된, 사람이 읽고 쓰기 쉬운 데이터 형식입니다. 괄호 대신 들여쓰기를 사용하고, 주석을 지원하며, JSON의 상위 집합입니다. Docker Compose, Kubernetes, GitHub Actions와 많은 애플리케이션의 설정에 널리 쓰입니다. 공백에 의존하기 때문에 공백 하나만 잘못 들어가도 쉽게 깨지고, "no"나 날짜 같은 일부 값은 예상과 다르게 해석될 수 있습니다.
- 압축 방식
- –
- 투명도
- –
- 애니메이션
- –
- 도입 연도
- 2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
생성된 데이터나 API 데이터를 사람이 관리하고, 풀 리퀘스트에서 검토하고, 주석을 다는 설정 파일로 만들어야 할 때 JSON을 YAML로 변환합니다.
JSON YAML 변환 자주 묻는 질문
JSON은 이미 올바른 YAML입니까?
YAML 1.2 기준으로는 그렇습니다. 2009년 개정판은 모든 JSON 문서가 YAML 문서도 되도록 작성되었습니다. JSON을 .yaml 파일에 그대로 붙여 넣어도 대부분의 도구가 받아들입니다. 변환하는 이유는 가독성입니다. 검토자와 다음 관리자는 중괄호, 따옴표, 쉼표가 없는 블록 스타일을 기대합니다.
YAML에서 일부 값이 따옴표로 감싸진 이유는 무엇입니까?
따옴표가 없으면 YAML이 다른 유형으로 읽기 때문입니다. 1.10 같은 버전 문자열은 숫자 1.1이 되고, yes나 off는 오래된 파서에서 논리값이 될 수 있습니다. 숫자, 날짜, 논리값처럼 보이는 문자열이 문자열로 남으려면 따옴표가 필요하므로, 신중한 변환은 따옴표를 유지합니다.
변환한 뒤 주석을 달 수 있습니까?
있습니다. 그리고 그것이 변환하는 흔한 이유입니다. 줄 끝이나 별도 줄에 #을 쓰고 메모를 적으십시오. JSON에는 값을 왜 그렇게 설정했는지 설명할 방법이 없었지만 YAML에는 있으므로 검토와 인수인계가 쉬워집니다.
YAML에서 탭 문자 오류가 나는 이유는 무엇입니까?
YAML 명세는 들여쓰기에 탭을 금지하며 공백만 인정합니다. 변환기는 공백을 쓰지만, 탭을 넣도록 설정된 편집기로 다음에 수정하면 파일이 깨질 수 있습니다. .yaml 파일에는 공백을 쓰도록 편집기를 설정하십시오.
변환한 매니페스트를 Kubernetes가 받아들입니까?
kubectl은 JSON과 YAML을 모두 읽으므로 데이터는 어느 쪽이든 같습니다. 대부분의 문서, Helm 차트, 코드 리뷰가 YAML 버전을 쓸 뿐입니다. 나중에 jq나 API 호출용으로 JSON이 다시 필요하면 YAML JSON 변환으로 되돌리십시오.
- YAML JSON 변환.yaml·.yml 파일을 API, 검증기, JSON 전용 도구용 JSON으로 무료 변환. 기본 들여쓰기 정렬, 한 번에 20개, 30분 뒤 파일 삭제.
- JSON XML 변환JSON을 XML로 온라인 변환합니다. 키는 요소, 배열은 반복 요소가 되고 모두 직접 정한 루트 태그 안에 들어갑니다. 들여쓰기 출력, 가입 불필요.
- JSON CSV 변환JSON·JSON Lines를 CSV로 변환합니다. 객체마다 한 행, 중첩 필드는 열로 펼침, Excel에서 악센트 문자가 깨지지 않는 BOM 포함 UTF-8. 한 번에 20개.
- XML JSON 변환XML을 읽기 쉬운 JSON으로 무료 변환. 속성은 @ 키, 반복 태그는 배열, 텍스트는 그대로. SOAP 응답, 피드, 레거시 내보내기용.
- JSON Base64 변환Kubernetes Secret, CI 변수, API 요청, 토큰용으로 JSON 파일을 한 줄 Base64로 인코딩합니다. 바이트 단위로 되돌릴 수 있고 data URI도 선택 가능.
- JSON 엑셀 변환JSON·JSON Lines를 엑셀 XLSX 시트로 변환합니다. 키는 열 머리글, 레코드는 행이 됩니다. 한 번에 20개 파일, 가입 불필요.