KevinFire2030 / Fire2025

0 stars 0 forks source link

UnicodeDecodeError: 'cp949' codec can't decode byte 0xec in position 14: illegal multibyte sequence #11

Open KevinFire2030 opened 1 year ago

KevinFire2030 commented 1 year ago

D:\Anaconda3\envs\py39_32\python.exe "C:/Program Files/JetBrains/PyCharm Community Edition 2022.3.2/plugins/python-ce/helpers/pydev/pydevd.py" --multiprocess --qt-support=auto --client 127.0.0.1 --port 53863 --file D:\Fire2025\23W23\book\ch18\pytrader.py 
Connected to pydev debugger (build 223.8617.48)
connected
Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2022.3.2\plugins\python-ce\helpers\pydev\pydevd.py", line 1496, in _exec
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "C:\Program Files\JetBrains\PyCharm Community Edition 2022.3.2\plugins\python-ce\helpers\pydev\_pydev_imps\_pydev_execfile.py", line 18, in execfile
    exec(compile(contents+"\n", file, 'exec'), glob, loc)
  File "D:\Fire2025\23W23\book\ch18\pytrader.py", line 157, in <module>
    myWindow = MyWindow()
  File "D:\Fire2025\23W23\book\ch18\pytrader.py", line 36, in __init__
    self.load_buy_sell_list()
  File "D:\Fire2025\23W23\book\ch18\pytrader.py", line 40, in load_buy_sell_list
    buy_list = f.readlines()
UnicodeDecodeError: 'cp949' codec can't decode byte 0xec in position 14: illegal multibyte sequence
python-BaseException
KevinFire2030 commented 1 year ago

이는 cp949 코덱으로 인코딩 된 파일을 읽어들일 때 발생할 수 있는 문제이며

아래와 같이 파일을 열어주면 에러가 발생하지 않고 정상적으로 파일을 읽어들일 수 있다.

open('파일경로', 'rt', encoding='UTF8')

여기서 예시로 UTF8로 인코딩을 지정했으나, 실제 파일 인코딩에 맞추어서 사용하면 된다.