当前位置:编程学习 > JSP >>

一个关于JSP乱码的问题

本人是JSP的初学者,我尝试着做了一个test01.jsp页面接收并显示来自由test01.html输入的信息。当我输入汉字时出现了乱码,自己想了半天查阅了相关资料,还是没能解决。希望大家能帮我解决一下,谢谢。 test01.html <html> <head> <title>JSP</title> </head> <body> <form action="test01.jsp" method="post"> 用户名:<input type="text" name="uname"><input type="submit" value="提交"> </form> </body> </html> test01.jsp <%@ page contentType="text/html;charset=gb2312"%> <html> <head> <title>JSP</title> </head> <body> <%=request.getParameter("uname")%> </body> </html>
答案:刚刚测试勒。
<%@ page contentType="text/html;charset=gb2312"%>
<html>
	<head>
		<title>JSP</title>
	</head>
	<body>
	<% request.setCharacterEncoding("GBK");%>  //加上这就好
	<%=request.getParameter("uname")%>
	</body>
</html>

你刚学吧。 以后有问题可发给我我帮你。
其他:test01.html和test02.html都加上<meta http-equiv="content-type" content="text/html; charset=gb2312"> test01.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<html>
	<head>
		<title>JSP</title>
	</head>
	<body>
	<%=request.getParameter("uname")%>
	</body>
</html>
中这句话
<%=request.getParameter("uname")%>
改为:
<%
String unname = new String(request.getParameter("unname").getBytes("iso-8859-1"),"gb2312");
out.print(unname);
%> 你这么做就已经处理了 
这是处理乱码方法之一
1 String str = new String(“原串”.getBytes(“原编码”),“须解析成的编码”); 
String username=new String(request.getParameter("username").getBytes("ISO8859-1"),"GB2312"); 
2 request.setCharacterEncoding("gb2312"); 
response.setCharacterEncoding("gb2312"); 
在tomcat的conf中server.xml文件中<context >中设置useBodyEncodingForURI="true"或URIEncoding="GB2312"重启服务器 
3 过滤器filter,就是对请求的地址进行拦截处理,然后交给servlet 
新建一个filter,implements javax.servlet.Filter 
覆盖其三个方法 
web.xml文件中增加一个<filter>标签 
<filter>中可以设置初始化参数<init-param></init-param>
 你这么做就已经处理了 
这是处理乱码方法之一
1 String str = new String(“原串”.getBytes(“原编码”),“须解析成的编码”); 
String username=new String(request.getParameter("username").getBytes("ISO8859-1"),"GB2312"); 
2 request.setCharacterEncoding("gb2312"); 
response.setCharacterEncoding("gb2312"); 
在tomcat的conf中server.xml文件中<context >中设置useBodyEncodingForURI="true"或URIEncoding="GB2312"重启服务器 
3 过滤器filter,就是对请求的地址进行拦截处理,然后交给servlet 
新建一个filter,implements javax.servlet.Filter 
覆盖其三个方法 
web.xml文件中增加一个<filter>标签 
<filter>中可以设置初始化参数<init-param></init-param>
8月

上一个:如何把js文件中获取到的有用信息输出到现有的JSP页面上(我采用AJax)?对于这个JSP页面我有要求
下一个:jsp需要学哪些技术

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,