你首先应该知道乱码的产生的原因。
1,有可能该文本本来就是二进制,而不是可见字符。
2,有可能是没有使用正确的字符集对文本进行解码,比如文本使用的是gbk,但是你用utf8去打开文件,那肯定会有乱码。但是你如果用gbk打开,那这个文件是没有乱码的。这算有乱码,还是没乱码?
3,补充一下2,如果你已经用错误的字符集打开文本了,然后打开后,你把乱码内容复制到另一个文本中,这时,第二个文本中的乱码内容可能就真的永久是乱码了。因为用错误的字符集打开文件时会进行转换,丢失了一些信息。
不知道你要检测哪类的乱码。给你一些相关的建议吧,你可以搜索一下encode,decode,对于未知编码格式的文件,打开文件时,用所有的字符集都试一遍,然后把结果输出来,然后由人来判断哪个字符集是正确的。当然,上面的代码要用try包起来
温馨提示:答案为网友推荐,仅供参考