近日被汉字乱码搞的晕头转向,研究了不少文章,自己的问题还没有最终解决,不过得到了一个副产品,找到了一个获取汉字字符串编码格式的可行方式:
String s = "汉字内容"; //这里的汉字内容可能是从其它途径获取的,不知晓其编码格式
String s1 = new String(s.getBytes(),"GBK"); //将汉字转换为GBK编码或其它编码
if(s1.equals(s)){
return "GBK";
}
s1 = new String(s.getBytes(),"UTF-8");
if(s1.equals(s)){
return "UTF-8";
}
//以此类推
通过比较原字符串和转换为新编码格式后的字符串是否相等,即可判断该字符串是否是这种编码格式。这种方法有点笨,等于是一个个编码格式去猜,在编码格式范围已知的情况下,可以一用