日期:2014-05-20  浏览次数:20782 次

紧急请教一个关于不同浏览器之间编码出现的问题
我用string.getbytes(string, "ISO-8859-1")方法对一个词,比如“中国”获得一组bytearray,想分别在不同的浏览器显出来,结果在firefox显示出来的和在IE 8中显出来的bytearray的值不相同,而用new string(bytearray, "UTF-8")方法解码获得出来的词,在firefox里面正常显示成“中国”,而在IE8里面就是乱码方块,请问我哪里做错了,附带我写的编码解码的代码片段:

String term = "中国";
byte[] buff = term.getBytes("ISO-8859-1");
String ss = new String (buff,"UTF-8");


------解决方案--------------------
乱搞。 ISO-8859-1 根本表示不了那个 term;

你应该直接用

term.getByte("UTF-8"); 才行
------解决方案--------------------
一个系统,只能用一套编码,记得在header里面输出一下,免得还得每次都设置浏览器的编码类型。
自动检测也行
------解决方案--------------------
发个源码看看!
------解决方案--------------------
这个不太懂,但是帮顶一下,期待高手出现,希望楼主能尽快解决难题
------解决方案--------------------
关注一下
------解决方案--------------------
这个不太懂,但是帮顶一下,期待高手出现,希望楼主能尽快解决难题