主题:jsp汉字传值问题
congjitongID
[专家分:0] 发布于 2006-12-26 23:23:00
我在传String 类型的字符串时遇到一个这样的问题,代码开始时前面有如下语句:
request.setCharacterEncoding("gb2312");
然后当我执行 String strUsertitle=request.getParameter("title"); 时就遇到问题了,当title是英文字母时就没有问题,一切正常,而如果是中文汉字,就显示五个叉后面还有一个问号,并且每个文件前面都有
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>语句,
明明都是gb2312怎么会传不过去呢?
哪位高手指点一下,不胜感激!
谢谢!
回复列表 (共3个回复)
沙发
yexin218 [专家分:4070] 发布于 2006-12-28 23:23:00
<html>
<head>
<title>CH14 </title>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
</head>
<body>
<h2>将信息存入 Mysql 中</h2>
<form name="form" action="Mysql.jsp" method="post" >
<p>姓:<input name="last_name" type="text" id="last_name"></p>
..............
<%@ page import="java.sql.*" %>
<%@ page contentType="text/html;charset=GB2312" %>
<html>
<head>
<title>CH14 - Mysql.jsp</title>
</head>
<body>
<h2>将信息存入 Mysql 中</h2>
<%
Connection con = null;
Statement stmt = null;
Statement stmt1 = null;
ResultSet rs = null;
request.setCharacterEncoding("GB2312");
还有你是写入数据库吗?“import="java.sql.*" “”
如果是的话,要对数据库进行设置。
try
{
Class.forName("com.mysql.jdbc.Driver").newInstance();
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sample?user=root&password=3363&useUnicode=true&characterEncoding=GB2312");
stmt = con.createStatement();
http://www.programfan.com/club/showbbs.asp?id=207036
板凳
xiongjianbang [专家分:460] 发布于 2007-01-08 11:57:00
<meta http-equiv="Content-Type" content="text/html; charset=GB2312">
加这句看看..
我也碰到过这样的麻烦
3 楼
kinghuzhihu [专家分:0] 发布于 2007-01-08 13:13:00
有时是 gbk
看下面的
String test=request.getParameter("name");
byte tt[]=test.getBytes("iso-8859-1");
test=new String(tt);
这样就ok了,不论是中文还是英文都能正常显示了
我来回复