UnicodeDecodeError:&x27;ascii';编解码器可以';t解码字节。。。Python2.7和
我正在阅读一个文本文件,其中包含来自许多不同国家的unicode字符。文件中的数据也是JSON格式的 我在CentOS机器上工作。当我在终端中打开文件时,unicode字符显示得很好(因此我的终端配置为unicode) 当我在Eclipse中测试代码时,它工作得很好。当我在终端中运行代码时,它会抛出一个错误: UnicodeDecodeError:“ascii”编解码器无法解码位置17中的字节0xc3:序号不在范围内(128) 因此,在到达StreetName之前,一切都正常工作,在StreetName中,它与UnicodeDecodeError崩溃,而UnicodeDecodeError就是非ascii字符开始出现的地方 我可以通过添加.encode('utf-8')来修复该实例: 但随后它与下一行的UnicodeDecodeError崩溃:UnicodeDecodeError:&x27;ascii';编解码器可以';t解码字节。。。Python2.7和,python,unicode,Python,Unicode,我正在阅读一个文本文件,其中包含来自许多不同国家的unicode字符。文件中的数据也是JSON格式的 我在CentOS机器上工作。当我在终端中打开文件时,unicode字符显示得很好(因此我的终端配置为unicode) 当我在Eclipse中测试代码时,它工作得很好。当我在终端中运行代码时,它会抛出一个错误: UnicodeDecodeError:“ascii”编解码器无法解码位置17中的字节0xc3:序号不在范围内(128) 因此,在到达StreetName之前,一切都正常工作,在Street
outLine = outLine + FlatAdd
一个月来,我一直在跌跌撞撞地讨论这类问题。任何反馈都将不胜感激 这可能会解决您的问题。我说可能是因为编码有时会让奇怪的事情发生;) 从这一点上,你应该摆脱的消息。如果不是这样,请反馈您拥有的文件类型、语言。可能是一些文件头数据
text\u file.decode(“ISO-8859-1”)
也可能是一种解决方案
如果全部失败,请在此处查看codecs()
罗布的演讲ᵩ ()对我理解unicode很有帮助。强烈推荐给任何有unicode问题的人 我的外卖:
- 将所有内容转换为unicode,然后将其输入应用程序
- 在代码中仅使用unicode字符串
- 从应用程序输出数据时指定编码
sys.stdout = codecs.getwriter('utf-8')(sys.stdout)
对于标准DIN:
inData = codecs.getreader('utf-8')(sys.stdin)
对于文件:
inData = codecs.open("myFile","r","utf-8")
对于stdout(在将任何内容写入stdout之前执行一次):
抢劫ᵩ, 非常感谢。看到字节后,我感觉像尼奥。
with codecs.open('your_file.extension', 'r', 'utf8') as indexKey:
pass
# Your code here
inData = codecs.getreader('utf-8')(sys.stdin)
inData = codecs.open("myFile","r","utf-8")
sys.stdout = codecs.getwriter('utf-8')(sys.stdout)