
CSV 파일은 가볍고 편해서 자주 쓰이지만, 막상 열어보면 한글이 깨지거나 열이 전부 한 칸에 몰려서 당황하는 경우가 많다. 특히 쇼핑몰 주문 내역, 은행 거래 내역, 광고 리포트, 고객 목록처럼 급하게 확인해야 하는 파일일수록 “왜 이 파일만 이상하지?”라는 생각부터 들게 된다.
문제는 CSV가 엑셀 파일처럼 모든 서식과 언어 정보를 완전히 품고 있는 형식이 아니라는 점이다. 실제로는 열기 방식, 인코딩, 쉼표·세미콜론 같은 구분자, 다시 저장하는 과정에서 문제가 갈리는 경우가 많다.
그래서 이 글은 “파일이 망가졌나?”부터 걱정하기보다, 원본은 멀쩡한데 열기 방식만 잘못된 건지, 인코딩이 다른 건지, 구분자 문제인지를 먼저 나누는 순서로 정리했다.
급하면 아래 3가지만 먼저 확인해도 방향이 빨리 잡힌다.
지금 바로 할 3가지
- CSV를 더블클릭으로 바로 열지 말고, 엑셀에서 가져오기 방식으로 연다.
- 메모장으로 먼저 열어 원본 한글이 정상인지 확인한다.
- 한글이 깨지면 UTF-8인지 ANSI/CP949 계열인지부터 의심한다.
30초 진단표
| 증상 | 가장 가능성 높은 원인 | 먼저 볼 것 |
|---|---|---|
| 한글이 이상한 문자로 보임 | 인코딩 불일치 | 2번으로 이동 |
| 열이 전부 A열 한 칸에 몰림 | 구분자 인식 실패 | 4번으로 이동 |
| 처음엔 정상인데 저장 후 다시 깨짐 | 다시 저장 방식 문제 | 3번으로 이동 |
| 엑셀에선 깨지는데 메모장에선 정상 | 엑셀 열기 방식 문제 | 1번으로 이동 |
| 특정 시스템에서 내려받은 CSV만 깨짐 | 해당 서비스의 인코딩 방식 차이 | 2번으로 이동 |
| 숫자 0이 사라지거나 날짜가 바뀜 | 엑셀 자동 형식 변환 | 5번으로 이동 |
메모장에서부터 깨지면 원본 인코딩 문제일 가능성이 크고, 메모장에선 정상인데 엑셀에서만 깨지면 열기 방식 문제일 가능성이 크다.
1️⃣ 먼저 원본이 깨진 건지, 엑셀에서만 이상한 건지 구분한다

가장 먼저 해야 할 일은 CSV 파일 자체가 망가진 건지, 아니면 엑셀에서 여는 방식 때문에 이상하게 보이는 건지를 구분하는 것이다.
이걸 먼저 나누지 않으면 인코딩만 바꾸다가 시간을 쓰거나, 반대로 원본 파일을 다시 요청해야 하는데 엑셀 설정만 계속 만지게 된다.
가장 빠른 확인 순서
- CSV 파일을 메모장으로 연다
- 한글이 정상으로 보이는지 확인한다
- 줄바꿈과 쉼표가 정상으로 보이는지 확인한다
- 그다음 엑셀에서 다시 열어 결과를 비교한다
여기서 판단하는 기준
- 메모장에서도 한글이 깨짐
→ 원본 인코딩 자체가 맞지 않거나, 파일 생성 단계부터 문제일 수 있다. - 메모장에선 정상인데 엑셀에서만 깨짐
→ 엑셀이 잘못된 인코딩으로 읽고 있을 가능성이 크다. - 한글은 정상인데 열이 한 칸에 몰림
→ 인코딩보다 구분자 문제가 더 유력하다.
이 단계가 중요한 이유
사용자는 보통 “파일이 깨졌다”고 느끼지만, 실제로는 엑셀이 자동으로 잘못 읽는 경우가 훨씬 많다.
그래서 원본을 한 번 텍스트로 확인해두면, 문제 범위를 크게 줄일 수 있다.
CSV가 깨져 보이면 먼저 메모장으로 열어 원본부터 확인하자. 파일 문제인지 엑셀 문제인지 여기서 거의 갈린다.
2️⃣ 한글이 깨지면: UTF-8인지 ANSI/CP949인지부터 본다

CSV 한글 깨짐의 핵심은 대부분 인코딩 불일치다.
어떤 시스템은 UTF-8로 저장하고, 어떤 시스템은 ANSI나 CP949 계열로 저장한다. 그런데 엑셀이 파일을 열 때 이 인코딩을 다르게 해석하면 “가나다” 같은 이상한 글자가 보이게 된다.
이런 경우를 의심
- 쇼핑몰, 광고 플랫폼, 은행, ERP에서 받은 CSV
- 해외 서비스에서 받은 CSV
- 맥/윈도우 환경을 오가며 받은 CSV
- 같은 파일인데 어떤 PC에서는 정상, 어떤 PC에서는 깨짐
가장 빠른 해결 순서
- CSV를 더블클릭하지 말고 엑셀 실행 후 빈 통합문서를 연다
데이터탭에서 텍스트/CSV 가져오기 또는 비슷한 가져오기 메뉴로 연다- 미리보기에서 파일 원본/인코딩 옵션을 바꿔본다
- UTF-8, 949/한국어, ANSI 계열을 비교해서 한글이 정상으로 보이는 쪽을 선택한다
여기서 해결되면
문제는 파일 손상이 아니라 엑셀이 파일을 읽는 방식이었던 가능성이 높다.
즉, 원본 CSV는 멀쩡한데 자동 해석만 틀렸던 셈이다.
자주 생기는 오해
한글이 깨졌다고 해서 무조건 파일을 다시 받아야 하는 건 아니다.
특히 메모장에선 정상인데 엑셀에서만 깨진다면, 대부분은 가져오기 인코딩 선택으로 해결되는 경우가 많다.
CSV 한글 깨짐은 원본보다 인코딩 해석 문제인 경우가 많다. 더블클릭 대신 가져오기 방식으로 여는 게 핵심이다.
3️⃣ 처음엔 정상인데 저장 후 다시 깨지면: 저장 형식을 잘못 고른 것이다

이 구간도 정말 많이 틀린다.
가져오기까지는 잘해서 한글이 정상으로 보였는데, 수정 후 저장하자마자 다시 깨지거나 다른 사람에게 보냈더니 깨진다면 저장 단계에서 인코딩이 바뀐 것일 수 있다.
이런 경우를 의심
- 열었을 때는 정상인데 다시 저장 후 깨짐
- 내 PC에선 정상인데 다른 사람 PC에서 깨짐
- CSV로 다시 저장했더니 한글이 망가짐
- UTF-8로 받아 놓고 ANSI 방식으로 다시 저장함
점검 순서
- 수정 전 원본 CSV 사본을 따로 보관한다
- 저장할 때 CSV 형식을 다시 확인한다
- 가능하면 CSV UTF-8 같은 형식이 있으면 우선 검토한다
- 저장 후 메모장으로 다시 열어 한글이 정상인지 먼저 확인한다
여기서 해결되면
문제는 열기 단계가 아니라 내가 다시 저장하면서 인코딩을 바꿔버린 것이었을 가능성이 높다.
즉, 파일이 원래 깨진 게 아니라 저장 방식이 잘못된 것이다.
꼭 기억할 점
CSV는 엑셀처럼 완전한 문서 형식이 아니어서, 저장할 때 수식, 시트 여러 개, 서식, 인코딩 같은 부분이 달라질 수 있다.
그래서 수정 작업 전엔 원본 백업을 먼저 남기는 습관이 중요하다.
중간 FAQ
Q. CSV를 엑셀에서 정상으로 열었는데 저장하고 나서만 한글이 깨지는 이유는 뭔가요?
가장 흔한 이유는 저장할 때 인코딩이 바뀌었기 때문이다. 처음 열 때는 가져오기 과정에서 UTF-8로 잘 읽었지만, 다시 저장하면서 다른 CSV 형식이나 기본값으로 저장되면 한글이 깨질 수 있다. 이럴 땐 원본을 남겨두고 저장 후 메모장에서 다시 확인하는 게 가장 빠르다.
4️⃣ 열이 한 칸에 몰리면: 인코딩보다 구분자를 먼저 본다

한글은 멀쩡한데 데이터가 전부 A열에 몰리거나, 열이 이상하게 갈라지면 이건 보통 구분자 문제다.
CSV는 이름 그대로 쉼표로 나누는 경우가 많지만, 시스템에 따라 세미콜론이나 탭처럼 다른 구분자를 쓰는 경우도 있다.
이런 경우를 의심
- A열 한 칸에 모든 내용이 몰림
- 쉼표가 보이는데 열이 나뉘지 않음
- 세미콜론으로 분리된 파일인데 쉼표로 읽음
- 국가/지역 설정 때문에 구분자 인식이 다름
가장 빠른 해결 순서
- 메모장으로 열어서 값 사이가 쉼표인지 세미콜론인지 본다
- 엑셀
데이터 가져오기단계에서 구분자 선택을 바꿔본다 - 쉼표, 세미콜론, 탭 중 데이터가 가장 자연스럽게 나뉘는 값을 선택한다
- 이미 한 칸에 몰린 상태면
텍스트 나누기기능으로 다시 분리할 수도 있다
여기서 해결되면
문제는 한글 깨짐이 아니라 필드 경계 인식 실패였을 가능성이 높다.
즉, 파일은 정상인데 열을 나누는 규칙을 엑셀이 잘못 읽고 있던 셈이다.
열이 한 칸에 몰리면 인코딩부터 만지지 말고, 구분자가 쉼표인지 세미콜론인지 먼저 보자.
5️⃣ 숫자 0이 사라지거나 날짜가 바뀌면: 엑셀 자동 변환을 의심한다

이건 “깨짐”처럼 느껴지지 않아서 놓치기 쉽지만, 실무에선 꽤 치명적이다.
CSV를 열었더니 00123이 123으로 바뀌거나, 2024-03-01 같은 값이 엑셀 날짜 형식으로 멋대로 바뀌면 데이터가 달라진 것이다.
이런 경우를 의심
- 앞자리 0이 있는 고객번호, 우편번호, 상품코드
- 날짜처럼 보이는 코드
- 긴 숫자가 지수 표기처럼 바뀜
- 전화번호, 계좌번호, 바코드 관련 값
점검 순서
- 더블클릭으로 바로 열지 않는다
데이터 가져오기단계에서 열 형식을 확인한다- 코드나 번호 열은 텍스트 형식으로 지정한다
- 불러온 뒤 값이 원본과 같은지 비교한다
여기서 해결되면
문제는 인코딩이 아니라 엑셀이 데이터를 너무 적극적으로 해석한 것이었을 가능성이 높다.
즉, 파일이 깨진 게 아니라 엑셀이 보기 편하게 바꾸는 과정에서 원본 값이 바뀐 것이다.
특히 중요한 이유
실무에서는 한글 깨짐보다 이 문제가 더 위험할 때도 있다.
왜냐하면 겉보기에 멀쩡해 보여서, 사용자가 데이터가 바뀐 걸 늦게 알아차리는 경우가 많기 때문이다.
6️⃣ 끝까지 안 되면: 구글 스프레드시트나 다른 편집기에서 중간 확인한다

여기까지 했는데도 계속 애매하면, 이제는 엑셀만 고집하지 말고 중간 확인용 도구를 쓰는 게 빠를 수 있다. 메모장, 구글 스프레드시트, 다른 CSV 편집 도구로 열어보면 원본 구조를 더 쉽게 확인할 수 있다.
이런 경우에 특히 유효하다
- 엑셀에선 계속 깨지는데 원인 구분이 안 됨
- 해외 서비스 CSV라 인코딩이 낯섦
- 값은 많은데 어느 열이 잘못됐는지 애매함
- 엑셀 저장 후 다시 깨지는 패턴이 반복됨
점검 순서
- 메모장으로 원본 확인
- 구글 스프레드시트나 다른 도구로 업로드/열기
- 값이 정상으로 보이는지 비교
- 원본이 정상이라면 엑셀 열기 방식 문제로 좁힌다
- 원본도 이상하면 파일 생성 단계 문제를 의심한다
여기서 해결되면
문제는 CSV 자체가 아니라 엑셀 환경 하나에만 묶여 있던 진단 방식이었을 가능성이 높다. 즉, 도구를 하나 바꾸는 것만으로 원인이 훨씬 잘 보일 수 있다.
요약표
| 상황 | 1순위 | 2순위 | 3순위 |
|---|---|---|---|
| 한글이 깨짐 | 메모장 확인 | 인코딩 선택 | 가져오기 방식 |
| 열이 한 칸에 몰림 | 구분자 확인 | 데이터 가져오기 | 텍스트 나누기 |
| 저장 후 다시 깨짐 | 원본 백업 | 저장 형식 확인 | 메모장 재확인 |
| 숫자·날짜가 바뀜 | 자동 형식 변환 의심 | 텍스트 형식 지정 | 다시 가져오기 |
| 끝까지 애매함 | 다른 도구로 확인 | 원본 구조 비교 | 파일 생성 단계 점검 |
FAQ
Q1. CSV는 왜 엑셀처럼 그냥 열면 안 되는 경우가 많나요?
CSV는 표처럼 보여도 실제로는 단순한 텍스트 데이터라서, 어떤 인코딩과 어떤 구분자를 썼는지까지 자동으로 완벽하게 맞춰주지 못하는 경우가 많다. 그래서 엑셀이 자동으로 잘못 해석하면 한글 깨짐이나 열 밀림이 생긴다.
Q2. UTF-8로 저장하면 무조건 안 깨지나요?
대체로 유리하지만, 상대방이나 사용하는 시스템이 UTF-8을 제대로 읽지 못하면 여전히 문제가 생길 수 있다. 그래서 중요한 건 “가장 좋은 인코딩 하나”보다 받는 쪽 환경과 여는 방식까지 같이 맞추는 것이다.
Q3. CSV를 그냥 엑셀 파일(.xlsx)로 바꾸면 해결되나요?
일부 상황에선 편할 수 있다. 다만 그건 CSV 문제를 없앤다기보다, 엑셀 형식으로 다시 저장해서 구조를 고정하는 방식에 가깝다. 원본을 다른 시스템과 주고받아야 한다면 CSV 자체를 제대로 여는 방법을 먼저 알아두는 게 좋다.
재발 방지
CSV 문제를 줄이려면 더블클릭으로 바로 열지 않고 가져오기 방식으로 여는 습관이 가장 중요하다.
또 수정 작업 전엔 원본 사본을 남기고, 저장 후엔 메모장으로 한 번만 다시 확인해도 인코딩 문제를 빨리 잡을 수 있다.
고객번호, 전화번호, 우편번호처럼 원본 값 유지가 중요한 열은 처음부터 텍스트 형식으로 가져오는 편이 안전하다.
결론
CSV 깨짐 문제는 겉으로는 비슷해 보여도 실제로는 인코딩, 구분자, 저장 방식, 엑셀 자동 변환, 열기 방식으로 갈리는 경우가 많다.
그래서 무작정 다른 프로그램을 찾기보다, 메모장에서 원본이 정상인지, 엑셀에서 무엇을 잘못 해석하는지 먼저 나누는 것이 가장 중요하다.
핵심만 다시 정리하면:
- 메모장으로 원본 먼저 확인
- 한글 깨짐이면 인코딩부터
- 열이 몰리면 구분자부터
- 저장 후 깨지면 저장 형식 점검
- 숫자·날짜가 바뀌면 자동 변환 의심
- 애매하면 다른 도구로 구조 확인
다음에 읽을 글(추천 3개)
- 엑셀 파일 안 열릴 때 해결 순서 – 손상·읽기 전용·응답 없음 복구
- 엑셀 저장 안 될 때 해결 순서 – 읽기 전용·동기화 충돌·저장 실패 복구
- OneDrive 동기화 안 될 때 해결 방법 – 업로드/다운로드 멈춤·빨간 X·0KB까지 10분 복구 가이드
