【发布时间】:2010-02-12 00:03:51
【问题描述】:
有人知道是否有一种简单的方法可以检测 Java 中的字符集编码吗?在我看来,有些程序能够检测给定数据使用的字符集,或者至少做出近似值。
我认为底层机制必须对每个字符集中的数据进行解码,然后选择具有最少未定义字符的字符集,然后选择更常见的字符集以打破平局。
有什么想法吗?
【问题讨论】:
-
我们在谈论什么输入?字节数组(二进制)还是字符数组(字符串)?那你想区分哪些呢?即只能对 Unicode 字符集(带有字节顺序标记)执行此操作,但对其他字符集不可靠。
-
这可能很棘手。在这个网站上,pfarland 正在使用一些启发式方法:forums.sun.com/thread.jspa?threadID=279203#3