im은 python3.3과 sqlite3 데이터베이스를 사용합니다. 나는 윈도우 7에서 워드 패드로 열 수있는 커다란 텍스트 파일 270mb를 가지고있다. 다음과 같이 해당 파일텍스트 파일의 줄을 읽고 charmap 디코딩 오류가 발생했습니다
각 줄은 같습니다
용어 \의 t 번호 \ n을
내가 모든 라인을 읽고 데이터베이스에 값을 저장합니다. 내 데이터베이스에 있지만, 단지 특정 라인에 모든 데이터를 읽을 수 있었다
f = open('sorted.de.word.unigrams', "r")
for line in f:
#code
, 난 모든 라인의 아마 반을 제안 다음과 같이 내 코드 보인다. 그런 다음 메신저에 다음과 같은 오류가 발생했습니다 :
File "C:\projects\databtest.py", line 18, in <module>
for line in f:
File "c:\python33\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 140: character maps to <undefined>
나는 encoding = utf-8로 파일을 열려고했지만 다른 코덱에서도 효과가 없었습니다. 그런 다음 UTF-8 txt 파일로 저장하여 워드 패드로 복사본을 만들려고했습니다. 그러나 워드 패드가 추락했습니다.
여기서 문제는 파이썬이 처리 할 수없는 문자가있는 것처럼 보입니다. 내 파일을 완전히 읽으려면 어떻게해야합니까? 또는 아마도 이러한 오류 메시지를 무시하고 그냥 다음 줄로 계속 진행할 수 있습니까?
당신은 여기에 압축 된 파일을 다운로드 할 수 있습니다 :
http://wacky.sslmit.unibo.it/lib/exe/fetch.php?media=frequency_lists:sorted.de.word.unigrams.7z
감사 alot을!
직접 파이썬없이 sqlite3를로 파일을 가져올 수있는 인코딩을 지정하려고 아무것도 의미하지 않는다. – elyase
지금 SQLite Database Browser를 사용해 보려는 순간 ... 나이가 들지만 좋은 해결책은 데이터베이스에 값을 쓰기 전에 파이썬으로 결정해야하는 숫자에 숫자를 추가해야하기 때문입니다. 그래서 저는 여전히 파이썬을 통해 또 다른 해결책을 찾고 있습니다. – zwieback86
참조 http://stackoverflow.com/a/9233174/14420,'encoding = ...'으로 열어야합니다. –