AWS
[AWS] S3 파일 업로드시 CSV 파일 한글 깨짐 현상 (해결)
z00h
2025. 4. 9. 15:18
member 테이블의 레코드가 담겨있는 CSV 파일을 이전 포스팅에서 한셀을 이용해서 S3에 업로드 하였는데
추가 실습을 위하여 레코드를 40개정도 추가 후 다시 Athena로 쿼리를 사용하는 과정에서 문제가 생겼다.
한셀로 CSV 저장하는 과정에서 쉼표 구분자로 저장이 되지 않아 Athena에서 파일을 잘 읽어오지 못하였다.
어쩔수 없이 Excel 파일로 연결 후 '쉼표 분리'로 저장을 하였는데
이때 한글이 깨진 상태로 파일이 저장되는 문제가 발생하여 이를 해결하는 과정을 포스팅 하려고 한다.
아래와 같이 member.csv 파일을 열면 한글이 깨져있는 상태다.
Athena는 파일 인코딩이 UTF-8일 경우 자동으로 처리하지만,
CSV 파일이 BOM(Byte Order Mark) 없는 UTF-8이라면 가끔 깨짐 현상이 발생한다.
→ 그래서 BOM 포함 UTF-8로 저장해줘야 한다.
✅ 해결방안 : 메모장으로 BOM 포함 UTF-8로 저장
- .csv 파일을 메모장으로 열기
2. 파일 → 다른 이름으로 저장
3. 저장 창 아래 설정 확인:
- 파일 형식: 모든 파일 (*.*)
- 인코딩: 반드시 UTF-8 (서명 있음)
👉 보통은 UTF-8 with BOM 또는 UTF-8 (서명 있음)으로 뜬다.
메모장에서 저장한 인코딩 : UTF-8(BOM) CSV파일을 S3에 업로드후 쿼리를 다시 실행해보면
정상적으로 추가된 레코드가 한글깨짐 현상 없이 SELECT 된 것을 확인 할 수있다!