我正在处理使用绝对路径引用另一个文件的二进制文件。 该路径包含日语和ascii字符。在python 3.x中使用带有混合编码的字符串
字符串的长度设定,这样我就可以读很多字节,并将其转换成字符串。
但是,问题是试图转换字符串。如果我将编码指定为ascii,它将在日文字符上失败。如果我将它指定为日语编码(shift-jis或其他),它将不会正确读取英文字符。
一个字节被用于每个ASCII字符,而两个字节被用于每个日语字符。
什么是将这些字节转换为字符串的最快和最干净的方式?编码是已知的。相同的技术是否可以在老版本的python中工作?
请勿混用编码;使用utf-8做一切事情。 – geoffspear 2012-02-08 04:05:20
如果我正在阅读的源不使用utf-8处理所有内容,那么这将不起作用。我使用的许多其他文件都有不使用utf-8的开发人员(无论是中文,日文还是韩文)。 – MxyL 2012-02-08 04:15:41
是否使用mybytestring.decode('shift-jis')不起作用?即使它不是一个真正的标准,shift-jis在理论上与ascii兼容,除了可能是\和〜字符。 – gps 2012-02-08 08:15:09