我正在研究Python脚本,该脚本读取以UTF-8编码的XML文件,对其进行一些操作并将其保存到Google的数据存储区(它是一个App Engine程序)。使用非ASCII字符在Python中执行文件I/O
我正在阅读和解析文件的方式只是file.readline()和一些正则表达式。唯一的问题是我正在处理的文件中有很多不同语言的字符,例如,它可能有é或Å或俄语或希腊字符。
我得到这样的错误起初:“UnicodeDecodeError:'ascii'编解码器无法解码位置0字节0xd0:序号不在范围(128)。”然后我试着将打开的文件上的编码切换到“ISO-8859-15”,这样可以消除错误,但输出的字符不会显示正确。
所以我的问题是:如何在没有Python的情况下使用Python中的UTF-8编码的文件处理卡住文件中的所有特殊字符?我希望这很清楚,并且提前感谢任何建议。
你的模式和字符串被搜索的unicode字符串? – nmichaels 2011-01-20 21:28:26
是的 - 因为我不用我的正则表达式搜索任何特殊字符。 – dshipper 2011-01-20 21:32:36