乱死了!搞不定!求助大佬如何判断文本或字节集编码?
想读取一些文本文件,分别是ansi,utf8,Shift-JIS等编码在我知道的情况下可以分别这么写一个用“多字节到文本”,一个用“UTF8到文本”,如果我要循环读取很多掺杂在一起的文档,都是不同的编码,有没有通用的命令?
或者有没有命令判断该用“多字节到文本”还是“UTF8到文本”?
这个很难。需要综合许多种方法,并且结果还不一定准确。
比如 哪怕是大名鼎鼎的 visual studio code,也经常判断错编码,尤其是特殊字符比较少的时候。
大概流程就是
1. 读文件头,比如 UTF8 BOM。不过更多时候是无BOM的
2. 按顺序读字节,不同编码有不同的特征,而大部分编码又兼容 asc ii
对于一些特殊格式 比如xml,py 等,有特殊的编码定义头,需要尝试解析。
总之,就是非常非常麻烦 本帖最后由 windkey 于 2021-8-13 19:57 编辑
0晨鹤0 发表于 2021-8-13 19:42
这个很难。需要综合许多种方法,并且结果还不一定准确。
比如 哪怕是大名鼎鼎的 visual studio code,也经 ...
哎,那我还是放弃吧。。。 utf8到文本 huay6 发表于 2021-8-13 22:50
utf8到文本
你在说啥啊…… 这个没有很好的办法。。最好的办法可能就是把这些文档统一转换成utf8或者utf16的编码,这样读的时候就统一了。 楼主看看这个轮子吧 编码探测
http://bbs.voldp.com/forum.php?mod=viewthread&tid=10603
页:
[1]