使用easyUI + SpringMVC 技术web项目开发 中文乱码
2015-10-06 13:39
921 查看
1、经常在web开发中遇到参数传递的中文乱码问题,常用的做法:
a)、修改HTML/JSP页面编码格式: <meta charset="UTF-8">或<%@ page contentType="text/html; charset=UTF-8"%>
b)、使用filter过滤,设置编码.
2、但有时候上诉方法,不太好用,经常无效,这是我们可以将传递的中文
字符串参数在js中统一编码(unicode)然后在后台统一解码为字符串
a)、js端 编码函数
/*
* js Unicode编码转换
*/
var decToHex = function(str) {
var res=[];
for(var i=0;i < str.length;i++)
res[i]=("00"+str.charCodeAt(i).toString(16)).slice(-4);
return "\\u"+res.join("\\u");
};
b)控制器端 解码函数
/**
* unicode 转字符串
* @param utfString
* @return
*/
public static String unicodeToString(String utfString){
StringBuilder sb = new StringBuilder();
int i = -1;
int pos = 0;
while((i=utfString.indexOf("\\u", pos)) != -1){
sb.append(utfString.substring(pos, i));
if(i+5 < utfString.length()){
pos = i+6;
sb.append((char)Integer.parseInt(utfString.substring(i+2, i+6), 16));
}
}
return sb.toString();
}
a)、修改HTML/JSP页面编码格式: <meta charset="UTF-8">或<%@ page contentType="text/html; charset=UTF-8"%>
b)、使用filter过滤,设置编码.
2、但有时候上诉方法,不太好用,经常无效,这是我们可以将传递的中文
字符串参数在js中统一编码(unicode)然后在后台统一解码为字符串
a)、js端 编码函数
/*
* js Unicode编码转换
*/
var decToHex = function(str) {
var res=[];
for(var i=0;i < str.length;i++)
res[i]=("00"+str.charCodeAt(i).toString(16)).slice(-4);
return "\\u"+res.join("\\u");
};
b)控制器端 解码函数
/**
* unicode 转字符串
* @param utfString
* @return
*/
public static String unicodeToString(String utfString){
StringBuilder sb = new StringBuilder();
int i = -1;
int pos = 0;
while((i=utfString.indexOf("\\u", pos)) != -1){
sb.append(utfString.substring(pos, i));
if(i+5 < utfString.length()){
pos = i+6;
sb.append((char)Integer.parseInt(utfString.substring(i+2, i+6), 16));
}
}
return sb.toString();
}
相关文章推荐
- java多态心得
- java.util.concurrent.atomic包分类
- java反射
- Spring父子容器的关系分析--用实例说话
- java实现计算算术表达式的值(后缀表达式方式)
- Spring mvc4返回的json日期为Long的解决方案
- 小议hashmap
- eclipse常用的几个快捷键
- 自己动手编译的openjdk7u6(在ubuntu14.04)
- JUnit报错java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
- Eclipse常用快捷键
- Spring常用注解
- Java基础 学习
- Spring实战(第3版)读书总结
- java继承和多态、接口小结
- 0917 词法分析程序(java版)
- java递归获取文件列表和File的应用
- Java语言基础作业
- Java最最常用的100个类排序(非官方)
- Java最最常用的100个类排序(非官方)