日期:2014-05-17  浏览次数:20735 次

pager-taglib中文搜索乱码问题
使用pager-taglib,在使用参数<pg:param name="xxxx"/>时,翻页总是乱码?看了很多的解决办法,包括重新
编译jar包,value = java.net.URLEncoder.encode(value,"GBK")。使用filter等等都不行。那位大侠能解决?
先谢谢了!

------解决方案--------------------
还有就是你看看你页面的编码和解码都是否正确。乱码无非就是你编码解码的问题,用什么编码就要用什么解码。否则必会乱码,即使不乱码,也是个别碰巧
------解决方案--------------------
引用:
引用:
不应该啊~用过滤器处理应该能解决啊,get方式的乱码你怎么处理的啊??


strtus.i18n.encoding=gbk.
用过滤器如何解决,您能给出代码么?先谢谢了!

建议用utf8作为统一的编码

------解决方案--------------------
UTF-8
------解决方案--------------------
引用:
不应该啊~用过滤器处理应该能解决啊,get方式的乱码你怎么处理的啊??
strtus.i18n.encoding=gbk.
用过滤器如何解决,您能给出代码么?先谢谢了!
建议用utf8作为统一的编码


首先统一编码,在改处理的地方进行utf-8
另外我以前也遇到另外一种,就是数据库里面没有设置 utf-8  ,程序里面再怎么弄都是乱码,后来才想起了是数据库字段属性设置 utf-8 。




希望的能有帮助


------解决方案--------------------
我之前也遇到过lz相同的问题,建议你统一使用UTF-8编码。及时配置过滤器等也无法解决这个问题。写一个转换字符编码的类就可以解决问题。
public class ToUtf8String {
public static String toUtf8String(String s){
        StringBuffer sb = new StringBuffer();
        for (int i=0;i<s.length();i++){
            char c = s.charAt(i);
           if (c >= 0 && c <= 255){sb.append(c);}
           else{
               byte[] b;
               try { b = Character.toString(c).getBytes("utf-8");}
               catch (Exception ex) {
                   System.out.println(ex);