说明:进行web开发的时候,有时候会遇到传中文的问题,这时候可以使用如下方式解决:
if(str1 != null && !"".equals(str1))
{
str2 = new String(str1.getBytes("ISO-8859-1"),"gbk");
}
但是如果遇到如果是中文不进行转码,不是中文需要转码的问题,这种方式就不行了,我们就需要先判断一下是是不是中文再转码。这个时候下面的方法就可以发挥神奇的作用。
String str1 = "杨abddfs查询信息";
String str2 = "";
CharsetEncoder ch=Charset.forName("gbk").newEncoder();
if(ch.canEncode(str1)){
str2 = str1;
}else{
if(str1 != null && !"".equals(str1))
{
str2 = new String(str1.getBytes("ISO-8859-1"),"gbk");
}
}
System.out.println("show\t"+str2);