Ajax中文处理乱码问题总结
<!--相关信息--> <!--资讯正文-->
乱码是经常困扰非英语Web程序开发的程序员的问题,可喜的是网上的解决方案也不少,有从客户端想办法的,有从服务端想办法的.本人收集了一些材料,总结出自认为比较容易轻松的方案如下,希望与大家一起探讨.
1.Jsp页面正确显示中文(其实这个不是Ajax的)
页首写入:
<%@ page contentType="text/html; charset=UTF-8"%>
<Title>后写入:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
这样静态中文就可以显示了.
2.Java解析XMLHttpRequest传递过来的中文.
如果把中文直接放在URL中通过XMLHttpRequest传到Servlet中,中文会变成"??",其实这时用下列函数转一下码即可:
String type =StringUtil.getDecodeParamFromReq("type",request); // 取代了原来的request.getParameter("type");
StringUtil类的完整代码如下:
package com.sitinspring.nnyy.util;
import javax.servlet.http.HttpServletRequest;
public final class StringUtil {
private StringUtil() {
}
public static String getDecodeParamFromReq(String paramName,
HttpServletRequest request) {
String retval = request.getParameter(paramName);
try {
// 中间用ISO-8859-1过渡
byte[] b = retval.getBytes("8859_1");
// 转换成GB2312字符
retval = new String(b, "GB2312");
} catch (Exception e) {
e.printStackTrace();
}
return retval;
}
}
此后type将得到正确的中文.
3.Response如何传出存在中文的xml
很简单,在Servlet的doPost函数首部书写一下三句即可
response.setContentType("text/xml; charset=UTF-8");
response.setHeader("Cache-Control", "no-cache");
response.setCharacterEncoding("UTF-8");
分享到:
相关推荐
Ajax中文乱码问题解决方案
Ajax 中文乱码问题 Ajax 中文乱码问题 Ajax 中文乱码问题
ajax乱码ajax乱码ajax乱码ajax乱码ajax乱码ajax乱码ajax乱码ajax乱码ajax乱码ajax乱码
jquery+asp ajax 中文乱码问题解决文档
Ajax uri 乱码问题总结
主要解决在ajax中中文参数传递过程中,服务器接收到中文乱码的问题
java认证_Ajax中文乱码问题及解决方法.doc
一个用java实现的ajax处理乱码例子
ajax提交时,后台接收的参数出现中文乱码的解决方法,
基于jsp后台java解决ajax异步传输中文乱码问题.
今天终于解决了AJAX的中文乱码问题,写篇文章来帮助一下有同样问题的朋友们。我的开发环境:XP, eclipse,使用GB18030编码。 当遇到这个问题时,到网上去查了好多文章,提到几种解决方案,如:全站UTF-8编码;请求头...
针对java web开发方面中文乱码情况的总结,基本各种情况都有了!
NULL 博文链接:https://cuiran.iteye.com/blog/443026
NULL 博文链接:https://zmx.iteye.com/blog/643075
Ajax解决乱码问题
在js中对中文进行编码在java程序中进行解码即可解决中文乱码问题
解决ajax异步提交后台取值中文乱码问题,提供两种解决方法
ajax乱码问题.ajax乱码问题的一些解决方案,总结网友的一些方法。
这是一个ajax解决乱码的问题WEBSERVICE项目