URL乱码重新编码

来源:互联网 发布:ss端口流量统计 编辑:程序博客网 时间:2024/05/16 14:12
//定义判断编码的方法
public static String getEncoding(String str) {      
String encode = "GB2312";
try {
if (str.equals(new String(str.getBytes(encode), encode))) { //判断是不是GB2312
String s = encode;
return s; //是的话,返回“GB2312“,以下代码同理
}
} catch (Exception exception) {
}
encode = "ISO-8859-1";
try {
if (str.equals(new String(str.getBytes(encode), encode))) { //判断是不是ISO-8859-1
String s1 = encode;
return s1;
}
} catch (Exception exception1) {
}
encode = "UTF-8";
try {
if (str.equals(new String(str.getBytes(encode), encode))) { //判断是不是UTF-8
String s2 = encode;
return s2;
}
} catch (Exception exception2) {
}
encode = "GBK";
try {
if (str.equals(new String(str.getBytes(encode), encode))) { //判断是不是GBK
String s3 = encode;
return s3;
}
} catch (Exception exception3) {
}
return ""; //如果都不是,说明输入的内容不属于常见的编码格式。
}
之前URL传输乱码已经处理好了。但是另外一个页面上有乱码发送后台查询这次如果还是乱码就要编码转换了:
如到了后台处理  String productNm = this.search.getProductNm ;//封装好的查询类
String encoding = ""; encoding = getEncoding(productNm);//判断编码if("ISO-8859-1".equals(encoding)){
 productNm = new String(productNm.getBytes("ISO-8859-1"),"utf-8");//重新转换UTF-8编码
}
                                             
0 0