注册 登录
编程论坛 J2EE论坛

[求助]页面传数据,但是显示是“??”,请问怎么解决啊

juleitai 发布于 2007-10-23 15:02, 560 次点击

下面是页面代码,地址栏输入3.jsp?name=李四,可页面打印出的是????

3.jsp
<html>
<%@ page contentType="text/html; charset=GBK" language="java" import="java.sql.*" errorPage="" %>
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
<title>无标题文档</title>
</head>
<body>
<%
request.setCharacterEncoding("GBK");

String name = request.getParameter("name");
out.print(name);

%>
</body>
</html>

5 回复
#2
zhangyg_cn2007-10-23 15:13

字符编码的问题?

<%!
public string strUtil(string str){
try
{
return new String(str.getBytes("iso-8859-1"),"gbk");
}
catch(Exception)
{
return str;
}
}
%>

<%
out.print(strUtil(request.getParameter("name")));

%>

#3
juleitai2007-10-23 17:16
传来传去就很麻烦了,唉~~
#4
xinxue2007-10-23 19:12
是不是应该这样写呀?request.setCharacterEncoding("gb2312");你试试,在脚本的最开始处,我也不知道行不行.
#5
枫飘天涯2007-10-23 19:53
String name = request.getParameter("name");
String name1 = new String(name.getBytes("iso-8859-1"),"gbk");
重新编码一下就行了 name1里面就是你输入的值,
就是有点麻烦 每个字符串都要重要编码一下
#6
zhangyg_cn2007-10-24 17:35
就是我那个方法
1