0

如果解码失败时出现异常,我们可以一一尝试检测文件编码。

但是我没有找到一种方法会在 python 中抛出一些异常,比如'UnicodeDecodeError',有什么具体原因吗?

PS:当某些字节映射到未定义的字符时,解码过程会失败,因为大多数编码方案都留下了一些未编码的冗余码。

PPS:我问这个问题是因为我认为这是一个设计问题。我没有关于编码的问题。但是当我想像 Vim(文本编辑器)那样编写一些代码来自动检测文件编码时,我发现这种设计让事情变得很困难。

4

1 回答 1

0

任何字节序列只有在作为与您的用例相关的字符流有意义时才对您有意义。

当解释不适合您的用例时,您希望 Java 做什么?您将看到“垃圾”输出。但从技术上讲,解码并没有失败。做到了?所以,它不能真正抛出任何异常。

您指定的编码可能不是兼容的。

于 2017-05-05T09:20:30.113 回答