应该使用String.getBytes().该方法根据你系统的字符编码做转换。如果你的系统字符时GB2312
,那么它等同于String.getBytes("gb2312").你只有使用系统当前的编码格式,才能获取完整的字符ascii编码。使用getBytes()后,字符窜将编码为ISO-8859-1的格式。实际上,在网络中传送的编码格式基本都用ISO-8859-1。你可以在解码的那一端使用new String(encodedString.getBytes("GB2312")),来获得解码端的本地显示。直接使用getBytes("Shift_JIS")会丢失字符信息,你获得的只是字符的前半部分编码,所以总是相同的。
不知道这样说,你看明白没!
,那么它等同于String.getBytes("gb2312").你只有使用系统当前的编码格式,才能获取完整的字符ascii编码。使用getBytes()后,字符窜将编码为ISO-8859-1的格式。实际上,在网络中传送的编码格式基本都用ISO-8859-1。你可以在解码的那一端使用new String(encodedString.getBytes("GB2312")),来获得解码端的本地显示。直接使用getBytes("Shift_JIS")会丢失字符信息,你获得的只是字符的前半部分编码,所以总是相同的。
不知道这样说,你看明白没!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货