(인코딩 에러) 파이썬 텍스트 파일 불러오기 문제.

조회수 1619회

제목은 저렇게 써놨지만 분명히 제가 올바른 해결책을 찾지 못한 상황이라고 생각합니다.

원본 파일은 옛 한글이 포함된 텍스트 파일인데 유니코드, utf-16, utf-8과 같이 모든 유니코드 저장 옵션으로 저장해도 파이썬에서 열리지 않습니다. (일단 파이썬에서 utf-16, utf-16-le등등 구글에서 standard encodings라고 검색하면 나오는 페이지의 형식은 전부 해봤습니다)

에러메시지는 'UnicodeEncodeError: 'UCS-2' codec can't encode characters in position 28623-28623: Non-BMP character not supported in Tk' 입니다.

구글링을 해보니 파이참과 같은 프로그램을 사용하면 열린다고 적어두신 분이 계시지만 기본 파이썬 에디터만을 사용해야 해서 이 해결책은 적용할 수 없습니다. 문제가 뭘까요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • 일단 문제는 4바이트 짜리 utf8 문자를 지원하지 못하는 것 같습니다.

    윈도우 cmd에서 수행하나요? cmd 말고 utf8을 지원하는 쉘에서 해보세요.

    cmd에서 해야 한다면 cmd 를 수행한 상태 즉 프롬프트상에서 아래와 같이 수행하세요.

    chcp 65001
    

    그후 파이썬 파일을 실행해보세요

    • cmd가 아니라 IDLE(Python 3.6 32-bit)프로그램을 통해서 진행중이었습니다. 'utf8을 지원하는 쉘'이라는게 혹시 파이참과 같은 것을 말씀하시는게 맞나요? 제가 과제로 진행 중이라 기본적인 idle프로그램을 사용해야 하는 제약이 있습니다. 알 수 없는 사용자 2018.6.4 00:39
    • 파이참을 말하는 것이 아니에요. 원인은 utf-8이 4바이트까지 표현이 가능한데 idle 에서(정확히는 tkinter) 4바이트 문자를 표현 못하는 것이 문제인거에요. 파이썬쉘(idle)에서 하지 말고 py 파일로 코딩한 후 cmd에서 python file.py 로 실행해보세요 정영훈 2018.6.4 01:26

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)