jsp无法显示中文

来源:百度知道 编辑:UC知道 时间:2024/05/09 11:20:15
<%@ page contentType="text/html;charset=gb2312" %>
<%@ page language="java" %>
<%
String xname=request.getParameter("usname");
if (xname==null || xname=="")
{
out.print("请输入你的姓名");
}
else
{
out.print("你的姓名是:");
out.print(xname);
}
%>
<html>
<head>
</head>
<body>
<form method="post" action="index.jsp">
姓名:<input type=text name="usname">   <input type="submit" value="提交">
</form>
</body>
</html>

这段代码能输入英文及数字,它能正确显示
可是,输入汉字,它就是乱码,

请问怎么解决

<%@ page contentType="text/html;charset=gb2312" %>
<%@ page language="java" %>
<%
request.setCharacterEncoding("gb2312");
String xname=request.getParameter("usname");
if (xname==null || xname=="")
{
out.print("请输入你的姓名");
}
加上第3句应该就没问题了!

public String iso2gb(String qs)
{
try
{
if (qs == null)
return "NULL";
else
{
// Used for TurboLinux
return new String(qs.getBytes("iso-8859-1"),"gb2312");
}
}
catch(Exception e){ System.err.println("iso2gb error:"+e.getMessage());}
return "NULL";
}

String xname=new String(request.getParameter("usname").getBytes("iso-5589-1"),"gb2312");