Java 中的自动检测字符编码

2022-09-02 22:24:36

似乎是一个相当热门的问题,但我还没有找到解决方案;也许是因为它有这么多口味。不过,这是。我正在尝试读取一些逗号分隔的文件(有时分隔符可能比逗号更独特,但逗号现在就足够了)。

这些文件应该在整个行业中标准化,但最近我们看到许多不同类型的字符集文件进来。我希望能够设置一个BufferedReader来弥补这一点。

什么是一种非常标准的方法来做到这一点并检测它是否成功?

我对这种方法的第一个想法是循环使用简单>复杂的字符集,直到我可以毫无例外地读取文件。虽然不完全理想...

感谢您的关注。


答案 1

Mozilla的通用chardet应该是那里的高效探测器。juniversalchardet是它的java端口。还有一个端口。阅读此 SO 以获取更多信息 字符编码检测算法


答案 2

推荐