CSV(쉼표로 구분된 값)와 TSV(탭으로 구분된 값)는 표 데이터를 순수 텍스트로 표현하는 가장 단순한 형식입니다. 각 줄이 하나의 행이고, 그 안의 값들을 쉼표나 탭으로 나누는 것이 전부지만, 구조가 단순한 만큼 값 하나만 잘못되어도 표 전체가 어긋나기 쉽습니다.
CSV·TSV와 엑셀 호환 데이터 정리하기
쉼표 하나, 따옴표 하나로 표가 어긋나는 이유를 정리했습니다.
CSV와 TSV, 언제 무엇을 쓸까
CSV는 엑셀의 기본 내보내기 형식이라 가장 널리 쓰이지만, 주소나 설명처럼 값 안에 쉼표가 자주 등장하는 데이터에서는 구분자와 값을 혼동하기 쉽습니다. 반대로 TSV는 일반 텍스트에 탭 문자가 거의 등장하지 않아 이런 충돌이 적고, 쉼표가 많은 데이터를 다룰 때 더 안전한 선택이 됩니다.
표가 깨지는 이유
구분자와 같은 문자가 값 안에 그대로 들어 있으면, 그 값이 어디서 끝나는지 프로그램이 알 수 없어 이후의 모든 열이 한 칸씩 밀립니다. 값 안의 따옴표가 짝을 이루지 못하거나, 행마다 열 개수가 다른 경우도 흔한 원인입니다.
따옴표 규칙 이해하기
표준 CSV 규칙은 간단합니다. 값 안에 구분자, 따옴표, 줄바꿈이 들어 있으면 값 전체를 큰따옴표로 감싸고, 값 안에 있는 따옴표는 두 번 연속 써서("") 진짜 따옴표임을 표시합니다. 이 규칙을 지키지 않은 데이터가 CSV 오류의 대부분을 차지합니다.
자주 묻는 질문
CSV 대신 TSV를 언제 쓰는 게 좋나요?
주소, 가격, 설명 문구처럼 값 안에 쉼표가 자주 등장하는 데이터라면 TSV가 구분자 충돌을 피하기 더 쉽습니다. 반대로 값 안에 탭 문자가 들어갈 일이 거의 없다면 TSV 쪽이 더 안전한 선택입니다.
정리 도구가 원본 데이터의 의미까지 보장하나요?
아니요. 닫히지 않은 따옴표나 어긋난 행 길이 같은 구조적 문제를 가능한 범위에서 보정할 뿐, 완전한 파서는 아닙니다. 정리된 결과를 표 미리보기로 확인한 뒤 사용하는 것이 안전합니다.