session.jsp的代码是:
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<%! String name="";%>
<%
name=request.getParameter("username");
byte[] tmpbyte=name.getBytes("ISO8859_1");
name=new String(tmpbyte);
session.putValue("username",name);
%>
你的姓名是:<%=name%>
<form method=post action="session1.jsp">
你想吃什么:
<INPUT TYPE=TEXT NAME="food">
<INPUT TYPE=SUBMIT VALUE="SUBMIT">
</form>
</body>
</html>
在session.jsp页面的name=request.getParameter("username"); 后面加上如下代码,就可以了。byte[] tmpbyte=name.getBytes("ISO8859_1");
name=new String(tmpbyte);
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<%! String name="";%>
<%
name=request.getParameter("username");
byte[] tmpbyte=name.getBytes("ISO8859_1");
name=new String(tmpbyte);
session.putValue("username",name);
%>
你的姓名是:<%=name%>
<form method=post action="session1.jsp">
你想吃什么:
<INPUT TYPE=TEXT NAME="food">
<INPUT TYPE=SUBMIT VALUE="SUBMIT">
</form>
</body>
</html>
在session.jsp页面的name=request.getParameter("username"); 后面加上如下代码,就可以了。byte[] tmpbyte=name.getBytes("ISO8859_1");
name=new String(tmpbyte);
解决方案 »
- 高手们,可不可以指点一下,我错在哪了?为什么不能输出结果呢?
- 使用getParameterNames时遇到的参数问题
- 看不懂这段代码阿
- 网上居然搜不到 : 网页排序 怎样变成输出大写数字
- java很弱的问题,如何计算两个日子相差多少天?
- 关于cookie问题.请各位帮下忙.在线感激.
- ftp上传applet问题
- ssh构架BBS出现跳转问题,求高手解答
- 對"MVC"裡Controller Servlet的疑惑﹐高手來解答!
- 请教各位大侠,我在用JBUILDER编写JSP是运行时,出现如下错误!!
- 新手请大家帮忙100分!!!!急急!!!
- 一个问题:使用rs.getString("title")从数据库里调出结果,我把结果放在表格里,没事;可我把结果放到表单input的value值里;数据被截取
session.html的代码是:
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<form method="POST" action="session.jsp">
<p align="center">请输入你的姓名:<input type="text" name="username" size="20"></p>
<p align="center"><input type="submit" value="提交" name="B1"></p>
</form>
</body>
</html>
session.jsp的代码是:
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<%! String name="";%>
<%
name=new String(request.getParameter("username").getBytes("ISO8859_1"),"gb2312"); //一定要这样写
session.putValue("username",name);
%>
你的姓名是:<%=name%>
<form method=post action="session1.jsp">
你想吃什么:
<INPUT TYPE=TEXT NAME="food">
<INPUT TYPE=SUBMIT VALUE="SUBMIT">
</form>
</body>
</html>
session1.jsp的代码是:
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title> session1.jsp</title>
</head>
<body>
<%!String food="";%>
<%
food=new String(request.getParameter("food").getBytes("ISO8859_1"),"gb2312"); //一定要这样写
System.out.println(food);
String name=(String) session.getValue("username");
%>
你的名字是:<%=name%>
你吃的是:<%=food%>
</body>
</html>
session.html的代码是:
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<form method="POST" action="session.jsp">
<p align="center">请输入你的姓名:<input type="text" name="username" size="20"></p>
<p align="center"><input type="submit" value="提交" name="B1"></p>
</form>
</body>
</html>
session.jsp的代码是:
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<%! String name="";%>
<%
name=new String(request.getParameter("username").getBytes("ISO8859_1"),"gb2312"); //一定要这样写
session.putValue("username",name);
%>
你的姓名是:<%=name%>
<form method=post action="session1.jsp">
你想吃什么:
<INPUT TYPE=TEXT NAME="food">
<INPUT TYPE=SUBMIT VALUE="SUBMIT">
</form>
</body>
</html>
session1.jsp的代码是:
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title> session1.jsp</title>
</head>
<body>
<%!String food="";%>
<%
food=new String(request.getParameter("food").getBytes("ISO8859_1"),"gb2312"); //一定要这样写
System.out.println(food);
String name=(String) session.getValue("username");
%>
你的名字是:<%=name%>
你吃的是:<%=food%>
</body>
</html>
我试过了,没有乱码问题!
1.修改区域设置:在控制面版中选择区域设置,设为英语(美国), 然后重起。一切就都正常。
2.在jsp页中加入一条语句:
<%@ page contentType="text/html;charset=gb2312" %>中文显示就正常了。
3.在编译servlet和jsp时加入代码选项。编译servlet使用
javac -encoding iso8859_1 myservlet.java
在jsp的zone配置文件中.修改编译参数为:
compiler=builtin-javac -encoding ISO8859_1
使用这种方法后,不需要作其他的改动就可以正常显示中文了。
4.最土的办法,在servlet源程序中加入代码变换语句。如
String ls_name = request.getParameter("username");
if(ls_name == null) ls_name = "";
ls_name = new String(ls_name.getBytes("8859_1"));
1.修改区域设置:在控制面版中选择区域设置,设为英语(美国), 然后重起。一切就都正常。
2.在jsp页中加入一条语句:
<%@ page contentType="text/html;charset=gb2312" %>中文显示就正常了。
3.在编译servlet和jsp时加入代码选项。编译servlet使用
javac -encoding iso8859_1 myservlet.java
在jsp的zone配置文件中.修改编译参数为:
compiler=builtin-javac -encoding ISO8859_1
使用这种方法后,不需要作其他的改动就可以正常显示中文了。
4.最土的办法,在servlet源程序中加入代码变换语句。如
String ls_name = request.getParameter("username");
if(ls_name == null) ls_name = "";
ls_name = new String(ls_name.getBytes("8859_1"));