CSV → YAML 변환기
YAML은 최신 설정 파일을 이루는 형식입니다. Kubernetes 매니페스트, GitHub Actions 워크플로, Docker Compose, Ansible 플레이북, Rails 픽스처 등이 모두 YAML을 사용합니다. 이 변환기는 CSV를 읽어 각 행이 헤더 행을 키로 하는 매핑이 되는 YAML 시퀀스를 생성합니다. 출력은 2칸 들여쓰기와 4단계 인라인 임계값을 사용하며, 대부분의 편집기와 린터 스타일에 맞춰져 있습니다.
CSV가 어떻게 YAML로 변하는지
-
1
CSV 파일을 붙여넣으세요
샘플이 미리 로드되어 있어 기본 출력 형태를 확인할 수 있습니다. 이를 사용자 데이터로 대체하세요.
-
2
구분 기호를 선택하세요
기본값은 쉼표입니다. 탭으로 구분된 입력에는 `\t`를, 그 밖에 파일이 사용하는 다른 한 글자를 입력하세요.
-
3
헤더가 키로 변합니다
1번 행은 헤더로 간주됩니다. 데이터 행들은 소스 열과 동일한 순서로 해당 키에 대응하는 매핑값으로 처리됩니다.
-
4
YAML이 안전하게 출력됩니다
출력은 Symfony YAML 컴포넌트가 생성하며, 불리언·숫자·날짜와 혼동될 여지가 있으면 값을 따옴표로 감쌉니다.
출력을 붙여넣기 전에 알아 두어야 할 YAML의 특이한 점
YAML은 겉보기에는 매우 관대하지만 내부에는 다양한 함정이 숨어 있습니다. 덤프 도구가 대부분의 문제를 처리해 주지만, 사용자의 데이터는 여전히 왕복 변환 과정을 견뎌내야 합니다.
노르웨이 문제와 그 친구들
YAML 1.1은 no, yes, on, off, true, false, y, n(그리고 대문자 형태 포함)을 모두 불리언 값으로 처리합니다. 예를 들어 노르웨이를 나타내는 국가 코드 열에 NO가 있으면 이 값이 조용히 false로 바뀔 수 있습니다.
| 원본 셀 | 출력 결과(따옴표 없음) | 일반적으로 의도한 의미 |
|---|---|---|
NO |
false |
국가 노르웨이 |
ON |
true |
온타리오 주 |
123 |
123 |
숫자 또는 ID |
0100 |
64 (8진수!) |
앞자리가 0인 코드 |
덤프 도구는 위험한 값을 자동으로 따옴표로 감싸지만, 출력 결과에 잘못된 데이터 형식이 나타나면 이후 단계에서 YAML 1.2 파서로 전환하거나, 중요한 값을 직접 따옴표로 감싸 주세요.
형식 선택
- 2칸 들여쓰기: 대부분의 편집기에서 사용되는 표준 설정이며,
yamllint같은 린터도 기본적으로 이 설정을 적용합니다. - 인라인 임계값 4: 깊이 중첩된 구조는 4번째 수준 아래에서는 한 줄로 출력되고, 그 위에서는 여러 줄로 펼쳐집니다. 더 엄격한 블록을 원하면 이후 단계에서 조정하세요.
- 앵커와 별칭은 생성되지 않습니다. 행이 중복되더라도 각 행은 새로운 매핑이 됩니다.
출력 예시
- name: Alice
age: 30
- name: Bob
age: 25
JSON 대신 YAML을 선택해야 할 때
- 주석과 여러 줄 문자열이 중요한, 손으로 편집하는 설정 파일.
- 쿠버네티스 매니페스트, CI 파이프라인, 앤서블 플레이북.
- 기계뿐 아니라 사람도 파일을 읽게 되는 모든 상황.
그 외의 경우 JSON이 더 엄격하고 파싱 속도도 빠르므로, 통신용 포맷이나 생성된 페이로드에는 JSON을 선호하세요.
자주 묻는 질문
YAML 1.1은 그대로 적힌 NO를 불리언 값으로 해석합니다. 변환기가 위험한 값을 따옴표로 감싸 주지만, 이후 파서가 여전히 형식을 강제 변환한다면 출력을 붙여넣기 전에 문제되는 셀을 따옴표로 감싸거나, 이런 값을 일반 문자열로 처리하는 YAML 1.2 파서로 전환하세요.
이 변환기에서는 각 행이 평면적인 매핑으로 변합니다. 중첩된 YAML 형식의 경우, YAML 라이브러리를 기반으로 소규모 스크립트를 작성하거나, 먼저 JSON으로 변환한 후 JSON 편집기에서 형태를 조정하는 방법을 사용하십시오.
셀은 선택한 구분 기호로 str_getcsv를 사용해 파싱됩니다. 따옴표로 감싼 값은 실제 CSV 파서와 동일하게 안에 포함된 구분 기호와 따옴표를 그대로 보존합니다.
네. 붙여넣은 CSV는 서버로 전송됩니다. 파싱과 YAML 직렬화는 서버에서 수행되며, CSV는 YAML 출력 생성에만 사용되고 저장되지 않습니다.
관련 도구
ASCII 표 참조
NUL, LF, DEL 같은 제어 문자를 포함해 모든 문자에 대한 10진수, 16진수, 8진수, 2진수, HTML 숫자 문자 참조를 담은 0부터 127까지의 전체 ASCII 표.
HTML 문자 참조
HTML 엔티티의 검색 가능한 목록, 각 엔티티의 이름 및 숫자 코드, 그리고 특수 문자 및 기호에 대한 1클릭 복사 기능을 제공합니다.
키보드 단축키 참고표
macOS, Windows, Linux에서 VS Code, Chrome, GNU Readline을 쓰는 Bash의 문서화된 기본 단축키를 검색합니다.
보색 찾기
어떤 입력에 대해서도 보색을 찾습니다. HSL 반대 색, 분할 보색 쌍, 그리고 접근성 있는 조합 제안을 반환합니다.
랜덤 영어 글자 생성기
A-Z 영어 글자를 무작위로 생성합니다. 개수와 대문자, 소문자, 혼합 대소문자를 선택해 게임, 과제, 수업 활동에 활용하세요.
랜덤 색상 팔레트 생성기
2~15개의 색상으로 랜덤 팔레트를 만들고, 비비드, 파스텔, muted, dark 스타일을 선택한 뒤 HEX 코드나 CSS 변수를 복사하세요.
이 도구는 다른 언어로도 제공됩니다
- Chuyển đổi từ CSV sang YAML [VI]
- CSV-naar-YAML-converter [NL]
- CSV 转 YAML 转换器 [ZH]
- CSV zu YAML Konverter [DE]
- CSV to YAML Converter [EN]
- Konverter CSV ke YAML [ID]
- CSV-till-YAML-omvandlare [SV]
- Konwerter CSV na YAML [PL]
- تحويل CSV إلى YAML [AR]
- เครื่องแปลงข้อมูลจาก CSV เป็น YAML [TH]
- Convertidor de CSV a YAML [ES]
- Convertisseur CSV en YAML [FR]
- Conversor de CSV para YAML [PT]
- CSV→YAMLコンバーター [JA]
- CSV'den YAML'a Dönüştürücü [TR]
- Convertitore da CSV a YAML [IT]
- Конвертер CSV в YAML [RU]