CSV ↔ TSV ↔ Pipe 변환
구분자 텍스트를 CSV·TSV·파이프·세미콜론 간 전환 — RFC-4180 스타일 인용·자동 감지.
name role note Alice Admin Lives in Seoul, Korea Bob Editor "Says ""hi""" Carol Viewer Plain note
내부 이중 따옴표는 RFC 4180에 따라 이중화로 이스케이프.
사용법
- 구분자 텍스트를 입력 박스에 붙여넣기. 첫 줄에서 구분자 감지.
- 출력 구분자 선택. 변환 실시간 실행.
- 행 × 열 개수 표시 — 파싱 결과 확인 가능.
자세한 설명
펼치기접기
한 방식으로 구분된 데이터를 붙여 넣으면 다른 방식으로 구분해 내보냅니다. 첫 줄에서 입력 구분자를 자동 감지하고, 인용과 이스케이프된 인용을 온전히 지원해 파싱하며, RFC 4180 방식으로 인용해 다시 씁니다(새 구분자나 인용부호, 줄바꿈, 양끝 공백이 든 칸은 "…"로 감싸고 안쪽 인용부호는 두 번 겹칩니다). 엑셀 내보내기가 세미콜론을 주는데 파이프라인은 쉼표를 기대할 때, 또는 구글 시트에 깔끔하게 붙이려고 TSV가 필요할 때 씁니다.
변환을 단지 다르게 만드는 대신 안전하게 만드는 부분이 출력 시 인용입니다. 새 구분자가 든 칸은 감싸지 않으면 그 행에 열이 조용히 하나 늘고, 인용부호가 든 칸은 겹치지 않으면 받는 쪽 파서가 필드 경계를 잃습니다. 찾아 바꾸기로 변환하면 두 단계 모두 건너뛰는데, 그래서 쉼표가 든 주소 하나가 뒤의 모든 열을 밀어내기 전까지는 잘 도는 것처럼 보입니다.
세미콜론 내보내기는 엑셀이 까탈스러워서가 아닙니다. 쉼표가 소수점인 지역에서는 쉼표로 구분한 파일이 모든 숫자에서 모호해지므로, 엑셀은 시스템 목록 구분자를 따라 세미콜론을 씁니다. 그래서 같은 스프레드시트가 나라가 다른 두 기계에서 다르게 내보내지고, 쉼표를 전제한 파이프라인은 그중 한쪽에서 깨집니다.
스프레드시트에 붙여 넣을 때 집을 형식은 탭 구분입니다. 붙여넣기 경로가 탭을 칸 경계로 바로 다루기 때문입니다. 여기에는 짝이 되는 약점이 있습니다. 필드 안의 글자 그대로의 탭을 표현할 방법이 없으므로, TSV는 데이터에 탭이 하나도 없을 때만 안전합니다. CSV는 이스케이프 수단이 있어서 무엇이든 담을 수 있는데, TSV에 없는 것이 정확히 그것입니다.
감지는 첫 줄을 읽으므로, 데이터는 세미콜론을 쓰는데 머리글에 마침 쉼표가 든 파일은 잘못 감지되어 한 열로 파싱됩니다. 큰 덩어리를 믿기 전에 출력의 열 수를 확인하십시오. 한 열로 나온 변환은 데이터가 망가졌다는 신호가 아니라 구분자를 잘못 감지했다는 신호입니다.
자주 묻는 질문
입력 구분자 감지 방식?
첫 줄에서 후보 문자(,·\t·|·;) 빈도 세기, "…" 안 무시. 가장 빈도 높은 것 선택 — 쉼표가 동률 결정자(웹에서 가장 흔함).
출력 인용 규칙?
RFC 4180 스타일: 셀이 출력 구분자·이중 따옴표·개행을 포함하거나 양끝 공백이 있으면 "…"로 감싸기. 내부 이중 따옴표는 이중화로 이스케이프(" → "").
왜 CSV ↔ TSV?
TSV는 스프레드시트에 친화적 — Google Sheets·Excel이 대화상자 없이 셀에 직접 붙여넣음. CSV는 데이터 도구·CLI 파이프라인에 친화적. 빠른 변환으로 한 단계 절약.
고를 수 있다면 어떤 구분자를 써야 하나?
받는 쪽이 허용한다면 탭이다. 실제 데이터에는 탭보다 쉼표와 세미콜론이 훨씬 자주 들어 있어서, 탭 구분 파일은 따옴표 처리가 훨씬 덜 필요하고 단순한 도구로 읽어도 살아남는다. 쉼표는 뒤쪽에서 그것만 고집할 때에만 맞는 선택이다. 그리고 필드에 구분자가 들어갈 수 있는 상황이라면, 문자 선택보다 따옴표 규칙이 더 중요하다.
변환한 파일이 스프레드시트에서 한 열로 열린다. 왜?
스프레드시트가 내가 쓴 구분자를 읽는 대신 자기 지역 설정의 기대를 적용하기 때문이다. 쉼표가 소수점인 지역에서는 CSV가 세미콜론으로 구분돼 있으리라고 기대한다. 파일을 더블클릭하지 말고 구분자를 지정할 수 있는 가져오기 경로를 쓰거나, 지역마다 다르게 해석하는 일이 훨씬 적은 탭 구분 파일로 넘겨라.
이 주제의 가이드
관련 도구
HTML 표 → CSV 변환기
HTML <table> 데이터를 CSV, TSV 또는 세미콜론 구분 행으로 추출합니다. 브라우저에서 동작합니다.
변환
JSON Lines (NDJSON) 뷰어
.jsonl/.ndjson 파일 붙여넣기·드롭 → 레코드 테이블 보기, field:value로 필터, 유지할 컬럼 선택, JSON/CSV 재출력.
파일
CSV → SQL INSERT 생성기
CSV·TSV 행을 SQL INSERT 문으로 변환 — 테이블명·방언별 식별자·타입 추론·다중 행 모드.
변환
CSV → 엑셀(XLSX) 변환기
CSV·TSV를 브라우저에서 진짜 .xlsx 파일로 변환합니다. 앞자리 0, 긴 ID, SEPT1 같은 코드가 입력한 그대로 유지됩니다.
파일
CSV 뷰어 & 정렬
CSV·TSV 데이터를 정렬 가능한 표로 보기 — 파일 열기 또는 붙여넣기, 스프레드시트 불필요.
텍스트
마크다운 표 생성기
CSV·TSV·파이프 구분 데이터를 정렬된 GitHub 마크다운 표로 변환합니다.
텍스트