JSP编写WAP输入中文乱码问题
1. <%response.setContentType("text/vnd.wap.wml;charset=UTF-8";%>//utf8
2. <%request.setCharacterEncoding("UTF-8";%>//参数处理方式utf8
3. <%@ page pageEncoding="ISO-8859-1"%>//页面字符处理方式 iso-8859-1
我的JSP例子说明:
输入页面test1.jsp :
1. <%@ page contentType="text/vnd.wap.wml;charset=gb2312" %>
2. <%@ page pageEncoding="ISO-8859-1"%>
3. <?xml version="1.0" ?>
4. <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
5. <wml>
6. <card id="test1" title="汉字输入">
7. <p>
8. 姓名<input name="name" size="10"/><br/>
9. 号码<input name="id" format="*N" size="12"/><br/>
10.
11. <anchor>确定
12. <go href="test2.jsp" method="post">
13. <postfield name="name" value="name"/>
14. <postfield name="id" value="id"/>
15.
16. </go>
17. </anchor>
18. </card>
19. </wml>
//以上使用 go method=”post”> 的方法传送参数,用get好像不行
接收页面test2.jsp :
1. <%@ page contentType="text/vnd.wap.wml;charset=utf-8" %>
2. <?xml version="1.0" ?>
3. <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
4. <wml>
5. <card id="test2" title="汉字接收">
6. <%
7. request.setCharacterEncoding("utf-8";
8. String name=request.getParameter("name";
9. String id=request.getParameter("id";
10. %>
11. <p>姓名:<%=name%></p>
12. <p>id:<%=id%></p>
13.
14. <do type="prev" label="返回上页">
15. <prev/>
16. </do>
17.
18. </card>
19. </wml>
把2个文件保存成为utf-8文件格式就可以了。
我的感觉主要是
request.setCharacterEncoding(”utf-8″;
起到很大作用, 如果输入页面是gb2312 格式
接受页面则要使用
request.setCharacterEncoding(”gb2312″;
建议还是使用utf-8,因为移动网关用utf-8
http://blog.csdn.net/peter_k/archive/2007/01/25/1493217.aspx