还在为在URL中传入汉字参数变成乱码而烦恼吗?进来这里看看吧!

楼主
我是社区第192位番薯,欢迎点我头像关注我哦~
其实,在做报表的时候大家都很头疼为什么传个汉字或者特殊字符这么难呢?老是出现乱码的问题呢?这里你完全可以不用烦恼了,你只要将汉字进行编码转换然后将转换后的编码传给FR的报表系统就没有问题了,呵呵。
1.在java项目中增加一个类URLEncode,在其中加入方法
public static String cjkEncode(String text) {        
     if (text == null) {        
         return "";        
     }        
     String newText = "";        
     for (int i = 0; i < text.length(); i++) {        
         int code = text.codePointAt(i);         
         if (code >= 128 || code == 91 || code == 93) {//91 is "[", 93 is "]".        
             newText += "[" + Integer.toHexString(code) + "]";        
         } else {
             newText += text.charAt(i);        
         }        
     }        
     return newText;        
}
2.在所要传入汉字或者特殊符号的地方使用 URLEncode.cjkEncode(汉字),进行编码后传入参数中即可。
这样在FR中获得的就是你要传入的汉字了,而不再是乱码了。当然也可以加入js来转码的!这个大家可以参考一下FR的帮助文档来解决实际的问题,祝大家进步神速!
分享扩散:

沙发
发表于 2011-12-8 11:08:02
这里提供一个自定函数,大家可以使用自定义函数来使用class文件我使用附件的形式上传欢迎大家参考学习。用法是:自定义函数名(汉字)编码后应该是像这样的:[968f][4fbf]。非常抱歉,class文件不能上传了,如果有人需要,就请联系我吧!
板凳
发表于 2011-12-8 11:10:56
太高端了,先马克一下....用的时候再来深入学习....
地板
发表于 2011-12-8 11:15:36
{:soso_e113:}欢迎多多交流
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部 返回列表