在一个JSP页面中,用Java语言写了一段程序,产生一个中文的String变量,此时用System.out.print显示这个中文String,没有问题,然后在这个JSP页面的一个表单中显示这个String变量的时候,当这个变量为一般的中文字符没有问题,若这个String变量为生僻字十则不能显示,如“翀”显示为“?”,请高手解答!谢谢
解决方案 »
- 字符串比较的问题
- 请问JAVA有什么有名的社区软件?
- ASP怎样转化为JSP
- SQL server2000插入中文时出现乱码如何解决? 在线等...
- 各位高手,问个比较有难度的问题,在sql server中执行一条查询sql语句,只知道表名,不知道字段名,也不知道有多少个字段,如果准确获得字段名,
- 理解结贴--关于自动提醒功能
- 高分求教:ibatis连接sql server2005数据库如何获取游标?
- 写了一个日语日记系统,怎么设置字符串编码格式能够正确保存到数据库正确显示?
- jsp的数据库问题
- 请教javamail问题:如此两次用Transport对象的sendMessage方法有问题吗(等)?附相关代码
- 请问在TOMCAT中的项目如何获取到该项目的CLASSES目录
- 如何实现复选框被选中时显示一个<td></td>?
<%@ page language="java" %>
<%@ page session = "true" %>
<%@ page errorPage="../ExceptionErrorPage.jsp" %>
<%@ page import = "java.util.*" %>
<%@ page import = "com.cascc.avidm.dt.lib.utility.DateFormatter"%>
<%@ page import = "com.cascc.platform.aa.org.user.UserData"%>
<%@ page import = "com.cascc.platform.aa.org.ejb20.*"%>
<%@ page import = "com.cascc.platform.aa.AAContext"%>
<%@ page import = "com.cascc.avidm.login.model.PersonModel"%>
<%@ page import = "com.cascc.platform.domain.util.ServiceLocator"%>
<%@ page import = "com.cascc.avidm.util.AvidmConstDefine"%>
<%@ page import = "com.cascc.platform.aa.org.position.PositionData"%><%
String userid="";
String username=""; try{
PersonModel person = (PersonModel)session.getAttribute("person");
userid = person.getUserIID();
username=person.getUserName();
System.out.println(username); //这里显示中文正常
}catch(Exception e){}
%>
<html>
<head>
<LINK rel="stylesheet" type="text/css" href="../css/avidm.css">
<META HTTP-EQUIV="expires" CONTENT="Wed, 20 Feb 2000 08:30:00 GMT">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><body>
<form name="tran" method="get" >
<input type="textt" name="username" value="<%=username%>">//这里显示生僻中文显示为“?”
</form>
</body>
</html>其中引入了很多自己编写的类
"<%=new String(username.getBytes("GBK"));%>"
就可以了
用你的方法试了,还是不行那?
试试看
将"<%=username%>"该成
"<%=new String(username.getBytes("ISO8859-1"),"GBK");%>"
就可以了
这样试试
"<%=new String(username.getBytes("ISO8859-1"),"GBK")%>"
表达式后面不要分号的,刚才写错了
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK" />
</head>
换成这样子看看!产生你所说的错误的原因在与gb2312的字符集只包含常见的中文字,
它是GBK的子集!
System.out.println("username : "+username);
一定是对的,今天我刚好碰到这个问题............................