CSV 유효성 검사기
CSV·TSV를 헤더 행과 비교해 열 수가 어긋난 행, 빈 필수 셀, 이름이 비었거나 겹치는 열을 모두 찾아 정확한 줄 번호와 함께 보여줍니다.
.csv, .tsv, .txt 파일을 이 상자에 끌어다 놓아도 됩니다.
헤더와 열 수가 맞지 않는 행
CSV 유효성 검사기는 CSV나 TSV에서 헤더와 열 수가 맞지 않는 행을 찾아냅니다. RFC 4180 규칙으로 파싱하므로 쉼표·이스케이프된 따옴표·줄바꿈이 들어간 따옴표 필드도 정확히 세며, 각 행의 열 수를 헤더 행과 비교합니다. 열이 부족한 행, 열이 많은 행, 필수 값이 비어 있는 셀을 정확한 줄 번호와 함께 보여 주어 문제 위치로 바로 이동할 수 있습니다. 헤더 행 자체도 검사해, 이름이 없는 열을 알려 주고, 앞의 열과 이름이 같은 열은 두 열을 함께 짚어 줍니다. 판정 아래에는 통과든 실패든 데이터 행 수, 열 수, 정상인 행과 문제 있는 행의 수, 파일을 읽은 구분자가 한 줄로 나오고, 빈 줄은 문제로 세지 않고 건너뛴 줄 번호를 따로 적습니다. 파일을 입력 상자에 끌어다 놓아도 됩니다.
기본값은 엄격하고, 옵션으로 느슨하게 할 수 있습니다. 빈 값 허용을 켜면 선택 입력 열이 있는 파일에서 빈 셀 검사를 끄되, 열 수·헤더 이름·따옴표는 계속 검사합니다. 첫 행이 헤더를 끄면 헤더 없는 추출 파일로 보고 모든 행을 가장 많은 행이 가진 열 수와 비교합니다. 따옴표 문자와 이스케이프는 작은따옴표로 감싸거나 백슬래시로 따옴표를 이스케이프하는 파일에 맞춥니다. 기본으로 꺼져 있는 값 앞뒤 공백도 문제로 표시를 켜면 앞이나 뒤에 공백이 붙은 값과 공백뿐인 값도 알려 줍니다.
왜 어긋난 행이 문제인가
열 수가 하나만 어긋나도 가져오기가 실패하거나 값이 엉뚱한 필드로 밀리고, 데이터베이스 적재가 중간에 멈출 수 있습니다. 업로드 전에 파일을 검사하면 모르는 사이에 데이터가 망가지는 일을 막을 수 있습니다. 모든 처리는 브라우저에서 이루어져 민감한 파일도 기기를 벗어나지 않습니다.
자주 묻는 질문
어떤 행이 잘못된 것으로 표시되나요?
열 개수가 헤더 행과 다른 행 — 너무 적거나(짧은 행) 너무 많은 경우(긴 행) — 또는 열 개수는 맞지만 값이 비어 있는 셀이 있으면(빈 값 허용을 켜지 않았다면) 표시됩니다. 헤더 행도 이름이 없는 열이나 앞의 열과 이름이 겹치는 열이 있으면 표시됩니다. 각 문제는 발생한 줄 번호와 함께 보고됩니다.
쉼표나 줄바꿈이 들어간 따옴표 필드도 처리하나요?
네. 파서는 RFC 4180을 따르므로 큰따옴표로 감싼 필드 안의 쉼표나 줄바꿈은 새 열이나 행이 아니라 값의 일부로 처리됩니다. 이스케이프된 큰따옴표("")도 처리되며 줄 번호는 파일의 실제 줄을 가리킵니다. RFC 4180이 허용하지 않는 따옴표 — 따옴표로 감싸지 않은 값 안의 큰따옴표(인치 표시 27" 같은 것), 공백 뒤에서 시작하는 따옴표 값, 닫히지 않은 따옴표 — 는 CSV를 가져오는 프로그램마다 달리 읽으므로 줄과 글자 위치를 함께 알려 줍니다.
선택 입력 열이 있거나, 헤더가 없거나, 작은따옴표를 쓰는 파일도 검사할 수 있나요?
네. 빈 값 허용을 켜면 빈 셀은 문제로 세지 않고, 열 수·헤더 이름·따옴표는 계속 검사합니다. 첫 행이 헤더를 끄면 모든 행을 데이터로 보고 가장 많은 행이 가진 열 수와 비교하므로, 헤더 없는 추출 파일에서 첫 줄만 짧다면 그 한 줄만 보고됩니다. 따옴표 문자 옵션으로는 작은따옴표로 감싼 파일을, 이스케이프 옵션으로는 따옴표를 두 번 쓰는 대신 백슬래시로 이스케이프한 파일을 읽습니다. 모든 옵션은 엄격한 기본값으로 시작하므로, 옵션을 바꾸기 전에는 판정이 달라지지 않습니다.
값 앞뒤 공백이나 빈 줄도 알려 주고, 파일 요약도 보여 주나요?
네. 값 앞뒤 공백도 문제로 표시는 기본으로 꺼져 있어 켜기 전에는 판정이 바뀌지 않고, 켜면 헤더 이름을 포함해 앞이나 뒤, 또는 양쪽에 공백이 붙은 값과 공백뿐인 값을 알려 줍니다. 공백뿐인 값은 빈 값으로 세므로 빈 값 허용을 켜면 통과합니다. 빈 줄은 문제로 세지 않고 건너뛰며, 판정 아래에 그 줄 번호를 적습니다. 판정 아래 한 줄에는 통과든 실패든 데이터 행 수, 열 수, 정상인 행과 문제 있는 행의 수, 파일을 읽은 구분자가 나옵니다.
문제가 페이지에 보이는 것보다 많으면 어떻게 하나요?
페이지에는 앞쪽의 문제와 행만 보여 주고 나머지가 몇 개인지 알려 주므로, 아주 큰 파일이라도 페이지가 수천 줄에 묻히지 않습니다. 목록 아래의 복사와 다운로드 버튼은 잘리지 않아서 파일의 모든 문제를 한 줄에 하나씩 담으며, 다운로드는 csv-validator-issues.txt로 저장됩니다.