UnicodeDecodeError 해결

파일 입출력을 사용할 때 파일을 불러오면서 오류가 발생했다.

오류 코드

# csv 파일 다운로드 받은 후 확인해본다.
import csv
fp = open('국가.csv', 'r')
data = csv.reader(fp)

# 출력하여 데이터 확인
for each in data:
    print(each)

오류 내용

UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xc7 in position 0: invalid continuation byte

이는 인코딩 방식의 차이로 발생하는데, 맥과 윈도우의 인코딩 방식이 달라서이다.

해결 방법

이럴 경우 대부분 파일을 열 때 인코딩 방식을 cp949로 설정하면 해결된다.

fp = open('국가.csv', 'r', encoding="cp949")

해결 코드

# csv 파일 다운로드 받은 후 확인해본다.
import csv
fp = open('국가.csv', 'r', encoding="cp949")
data = csv.reader(fp)

# 출력하여 데이터 확인
for each in data:
    print(each)
위로 스크롤