用错误的编码构造了String,怎么还原得到原来的byte[]???是这样的:StringsnewString( 中文 .getBytes(),
用错误的编码构造了String,怎么还原得到原来的byte[]???
是这样的:
String s = new String( "中文 ".getBytes(), "utf-8 ");
String ss = new String(s.getBytes( "utf-8 ")), "gb2312 ");
System.out.println(ss); //为乱码
也就是说已开始我不知道byte[]所采用的编码,就用默认的utf-8,后来发现不对,想用已用utf-8编码的String恢复原内容
该怎么办呢?
[解决办法]
为什么要还原呀,程序错啦,改程序呀?
[解决办法]
不能吧.我不会.
[解决办法]
很难再转换回去.
[解决办法]
通过编码转化后,再还原比较麻烦
[解决办法]
就象熟的鸡蛋
[解决办法]
由非 utf-8 码,转 utf-8 编码时,进行了移位操作,将原本字符的重要信息位移掉了,没有办法再转回来了。
