CSV 수정기
망가진 CSV를 온라인으로 수정 — 들쭉날쭉한 행, 이스케이프 안 된 따옴표, 잘못된 구분자, 끼어든 BOM을 몇 초 만에 고칩니다.
CSV 수정기란?
임포트가 안 되는 CSV가 있나요? 들쭉날쭉한 행, 이스케이프 안 된 따옴표, 잘못된 구분자, 끼어든 BOM, Word에서 복붙한 스마트 따옴표 — 이런 게 하나만 있어도 Excel, pandas, DB 로더가 폭발합니다. CSV 수정기는 엉망이 된 CSV(Comma-Separated Values)를 읽어서 실제로 파싱되는 깔끔한 버전으로 돌려줍니다.
JSON과 달리 CSV는 엄격한 사양이 없습니다 — RFC 4180은 가이드라인이지 법이 아닙니다. Excel, Google Sheets, Postgres COPY, Python의 csv 모듈은 모두 규칙을 자기 식대로 해석합니다. 이 도구는 파싱 실패를 일으키는 구조적 문제 — 열 개수 어긋남, 짝 안 맞는 따옴표, 따옴표 안에서 잘려 버린 행 — 를 복구합니다. 깨끗해지면 CSV 유효성 검사기에 돌려서 확인해 보세요.
데이터는 우리가 볼 수 있는 형태로 컴퓨터를 떠나지 않습니다 — 바이트만 고쳐서 그대로 돌려드립니다. 계정 없음, 회원가입 없음, 구독자 목록을 우리 서버에 저장하지도 않습니다.
CSV 수정기 사용 방법
세 단계입니다. 각 단계는 이 페이지의 버튼 하나에 대응합니다 — 숨겨진 건 없습니다.
망가진 CSV 붙여넣기 또는 샘플 불러오기
왼쪽 편집기에 CSV를 떨어뜨리세요. 샘플 CSV를 클릭하면 사람들이 실제로 마주치는 종류의 오류를 일부러 넣어 둔 주문 파일이 로드됩니다 — 따옴표가 반쯤 열린 채 나머지 줄을 통째로 삼키는 필드입니다. 망가진 CSV 예시:
orderId,customer,product,quantity,total
ORD-1001,"Ava Chen",Wireless Mouse,2,49.98
ORD-1002,Marco Rivera,"USB-C Hub,1,79.99
ORD-1003,"Priya Patel",Mechanical Keyboard,1,129.99
ORD-1004,"Lee, Jordan",Webcam HD,1,59.993행은 따옴표가 안 닫혔습니다 — "USB-C Hub가 열린 채 닫히지 않아서 파서가 그 뒤를 전부 삼킵니다. 현장에서 흔한 망가짐입니다.
CSV 수정!! 클릭
초록색 CSV 수정!! 버튼을 누르세요. 수정기는 구분자(쉼표, 세미콜론, 탭, 파이프 — ;를 쓰는 유럽식 export에도 대응)를 감지하고, RFC 4180 규칙에 따라 따옴표를 복구하며, 모든 행이 같은 열 개수를 갖도록 채우거나 잘라 냅니다.
수정된 CSV 확인
오른쪽 패널에 정리된 CSV가 표시됩니다. 훑어보고, 복사해서 DB나 스프레드시트, 파이프라인에 넣으세요. 여전히 말썽이면 CSV 유효성 검사기에 붙여서 두 번째 의견을 받거나, CSV 포매터로 열을 시각적으로 정렬해 보세요.
실제로 쓰게 되는 상황
DB 임포트 실패
Postgres COPY와 MySQL LOAD DATA INFILE은 봐주는 게 없습니다 — 따옴표 하나만 어긋나도 파일 전체가 거부됩니다. 파일을 고치고, 임포트를 다시 돌리고, 칼퇴하세요.
Excel · Google Sheets export
유럽판 Excel export는 ;를 구분자로 쓰고, pandas의 read_csv를 망가뜨리는 UTF-8 BOM을 앞에 붙입니다. 수정기가 구분자를 정규화하고 BOM을 떼어내면 pandas 파이프라인이 그냥 돌아갑니다.
손으로 편집한 데이터
누군가 CSV를 메모장에서 열어서 오타를 고치고 저장 — 이제 줄바꿈이 섞이고 행 개수가 하나 어긋납니다. 수정기는 \r\n/\n 혼합, 들쭉날쭉한 행, 끝에 붙은 공백을 직접 diff를 잡지 않아도 처리해 줍니다.
도구 간 마이그레이션
고객·상품 데이터를 한 SaaS에서 다른 SaaS로 옮기는데 받는 쪽이 임포트를 거부하나요? 파일을 일단 여기 한 번 통과시키세요 — 거부 대부분은 따옴표 이스케이프나 열 개수 문제고, 수정기가 한 번에 정리해 줍니다.
자주 묻는 질문
CSV가 제가 볼 수 없는 곳에 저장되거나 전송되나요?
CSV는 수정 처리를 위해 백엔드로 갔다가 바로 돌아옵니다. 파일 내용을 로깅하지 않고, 보관하지도 않습니다. 민감한 데이터 — 개인정보, 결제 데이터, NDA에 걸린 자료 — 는 우리 도구를 포함해 어떤 온라인 도구에도 넣지 않는 게 좋습니다. 그런 용도라면 로컬에서 Python csv 스크립트를 돌리세요.
실제로 어떤 종류의 CSV 오류를 고칠 수 있나요?
흔한 것들은 대체로 가능합니다: 들쭉날쭉한 행(헤더보다 열이 많거나 적은 행), 따옴표로 둘러싼 필드 안의 이스케이프 안 된 따옴표, 따옴표로 감싸야 하는데 안 감싼 쉼표·줄바꿈 포함 필드, \r\n/\n 혼합 줄바꿈, 시작 부분의 끼어든 UTF-8 BOM, 워드프로세서에서 붙여넣은 스마트 따옴표, 일관되게 잘못된 구분자를 쓴 경우. RFC 4180 기준입니다.
실제 데이터 값을 바꾸나요?
아니요. 도구는 구조와 따옴표만 복구합니다. 행을 만들어 내거나, 진짜 데이터 행을 떨어뜨리거나, 헤더 이름을 바꾸거나, 열 순서를 바꾸거나, 숫자를 문자열로 바꾸지 않습니다. 셀이 "79.99"이면 그대로 "79.99"입니다.
구분자를 자동으로 감지하나요?
네. 입력을 보고 일관성 있는 것을 기준으로 쉼표, 세미콜론, 탭, 파이프 중에서 고릅니다. 출력은 같은 구분자를 유지하므로, 세미콜론으로 시작했다면 세미콜론으로 끝납니다.
정말 큰 파일은요?
입력에 64 KB 상한이 있습니다. 그보다 큰 파일 — 기가바이트급 export, 로그 덤프 — 은 csvkit 같은 스트리밍 도구나 빠르게 짠 pandas 스크립트를 쓰세요. 2 GB짜리 CSV를 고치는 일은 애초에 인터랙티브하게 할 작업이 아닙니다.
"이 CSV는 못 고친다"고 하던데요. 그럼 어떡하나요?
어떤 구조는 안전하게 복구하기엔 너무 모호합니다 — 예를 들어 필드 안의 쉼표가 구분자로 의도된 건지, 그냥 글자 그대로의 쉼표인지 알 수 없는 파일이 그렇습니다. 그런 경우엔 첫 몇 줄을 눈으로 보고 가장 심한 부분을 손으로 고친 다음, 나머지를 다시 여기 돌리세요. CSV 유효성 검사기로 파서가 정확히 어느 행에서 막히는지 보는 것도 방법입니다.
같이 쓰면 좋은 다른 CSV 도구
CSV를 고치는 건 한 단계입니다. 깔끔하게 파싱되기 시작하면 다음 도구들이 나머지를 맡아줍니다: