CSV·TSV와 엑셀 호환 데이터 정리하기

쉼표 하나, 따옴표 하나로 표가 어긋나는 이유를 정리했습니다.

CSV(쉼표로 구분된 값)와 TSV(탭으로 구분된 값)는 표 데이터를 순수 텍스트로 표현하는 가장 단순한 형식입니다. 각 줄이 하나의 행이고, 그 안의 값들을 쉼표나 탭으로 나누는 것이 전부지만, 구조가 단순한 만큼 값 하나만 잘못되어도 표 전체가 어긋나기 쉽습니다.

CSV와 TSV, 언제 무엇을 쓸까

CSV는 엑셀의 기본 내보내기 형식이라 가장 널리 쓰이지만, 주소나 설명처럼 값 안에 쉼표가 자주 등장하는 데이터에서는 구분자와 값을 혼동하기 쉽습니다. 반대로 TSV는 일반 텍스트에 탭 문자가 거의 등장하지 않아 이런 충돌이 적고, 쉼표가 많은 데이터를 다룰 때 더 안전한 선택이 됩니다.

표가 깨지는 이유

구분자와 같은 문자가 값 안에 그대로 들어 있으면, 그 값이 어디서 끝나는지 프로그램이 알 수 없어 이후의 모든 열이 한 칸씩 밀립니다. 값 안의 따옴표가 짝을 이루지 못하거나, 행마다 열 개수가 다른 경우도 흔한 원인입니다.

따옴표 규칙 이해하기

표준 CSV 규칙은 간단합니다. 값 안에 구분자, 따옴표, 줄바꿈이 들어 있으면 값 전체를 큰따옴표로 감싸고, 값 안에 있는 따옴표는 두 번 연속 써서("") 진짜 따옴표임을 표시합니다. 이 규칙을 지키지 않은 데이터가 CSV 오류의 대부분을 차지합니다.

자주 묻는 질문

CSV 대신 TSV를 언제 쓰는 게 좋나요?

주소, 가격, 설명 문구처럼 값 안에 쉼표가 자주 등장하는 데이터라면 TSV가 구분자 충돌을 피하기 더 쉽습니다. 반대로 값 안에 탭 문자가 들어갈 일이 거의 없다면 TSV 쪽이 더 안전한 선택입니다.

정리 도구가 원본 데이터의 의미까지 보장하나요?

아니요. 닫히지 않은 따옴표나 어긋난 행 길이 같은 구조적 문제를 가능한 범위에서 보정할 뿐, 완전한 파서는 아닙니다. 정리된 결과를 표 미리보기로 확인한 뒤 사용하는 것이 안전합니다.