当前位置: 技术问答>java相关
天啊,又是中文问题:utf-8编码转成GBK,因为位数不同而产生字符丢掉问题!!
来源: 互联网 发布时间:2015-11-11
本文导语: 天啊,又是中文问题:utf-8编码转成GBK,因为位数不同而产生字符丢掉问题!! 某个字段是中文字段,需要将这个字段转成成unicode编码(utf-8去getBytes): str=new String(s.getBytes("UTF-8"),"ISO8859-1"); 无论这个字段是奇数...
天啊,又是中文问题:utf-8编码转成GBK,因为位数不同而产生字符丢掉问题!!
某个字段是中文字段,需要将这个字段转成成unicode编码(utf-8去getBytes):
str=new String(s.getBytes("UTF-8"),"ISO8859-1");
无论这个字段是奇数或者偶数个中文字,都没有发现丢掉汉字的问题。
但是经过
str=new String(s.getBytes("ISO8859-1"),"GBK");
处理过之后,发现偶数个中文字没有问题,但是奇数个中文字的最后一个汉字给丢掉啦!!
怎么办啊??
我必须要这样处理啊 ,我必须要想用str=new String(s.getBytes("UTF-8"),"ISO8859-1");这样处理,之后再要将这个str转换成"GBK"编码啊!!
某个字段是中文字段,需要将这个字段转成成unicode编码(utf-8去getBytes):
str=new String(s.getBytes("UTF-8"),"ISO8859-1");
无论这个字段是奇数或者偶数个中文字,都没有发现丢掉汉字的问题。
但是经过
str=new String(s.getBytes("ISO8859-1"),"GBK");
处理过之后,发现偶数个中文字没有问题,但是奇数个中文字的最后一个汉字给丢掉啦!!
怎么办啊??
我必须要这样处理啊 ,我必须要想用str=new String(s.getBytes("UTF-8"),"ISO8859-1");这样处理,之后再要将这个str转换成"GBK"编码啊!!
|
感觉原来编码是utf-8,所以
new String(s.getBytes("utf-8"),"任何编码方法")都是对的。
例如:new String(s.getBytes("utf-8"),"GBK")应该可以
不知道对不对?
new String(s.getBytes("utf-8"),"任何编码方法")都是对的。
例如:new String(s.getBytes("utf-8"),"GBK")应该可以
不知道对不对?
|
new String(s.getBytes("utf-8"),"gb2312")
我都是这么做的,没有发现什么问题啊
我都是这么做的,没有发现什么问题啊
|
搞胡涂了,非常关注。
用3个3个处理的话,如果中英文夹杂怎么办?
用3个3个处理的话,如果中英文夹杂怎么办?
|
mark