又是一个没人说话的帖,自己up下
说明一下,我的jsp文件里面有声明<%@ page contentType="text/html;charset=GBk"%>这句
说明一下,我的jsp文件里面有声明<%@ page contentType="text/html;charset=GBk"%>这句
解决方案 »
- checkedbox 分页提交
- 请问如何把yyyy-MM-dd hh:mm:ss格式的时间转换为UTC时间
- org.apache.jasper.JasperException: Exception in JSP,出现这个错误是什么原因?
- javaBean调用的问题?
- 怎么在java程序中执行一条命令行语句
- java调用oracle的delete操作存储过程
- servlet提交失败的问题
- jsp运行环境搭建,需要什么软件。
- 求救~关系到我能否毕业的问题!急的哭阿~
- spring webservice问题
- <jsp:getProperty name="x" poperty="a"> 怎么把它赋给一个变量!
- 狂狂狂倒 这样的怪事都有 高手快来啊,好几天了,这没有帮我解决得了 我的HTML文件是用户登录文件,内有个JAVASCRPIT是用来检查用户输入
里面的“GBk”是什么编码?应该是“GB2312”吧!
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
但是还是不行
我快疯了!
<%@page contentType="text/html;charset=gbk"%>
<html>
<head>
<title>title</title>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<link rel="stylesheet" href="../script/font.css" type="text/css">
<script language="javascript">
不懂的看这里
中文问题:行头加入
request.setCharacterEncoding("GB2312");
主要是显示内容的编码,例如你把上面改成gb2313然后显示陶喆的喆绝对是"?"lz主要是表单提交的数据编码问题,用楼上的办法绝对是没有问题的,但是建议用filter或者其他。但是不要直接在页面里面做,不然以后修改编码你会郁闷的
操作系统:xp
开发环境,jdk1.4.2+tomcat5.0.28+myeclipse3.8.2
准备写个论坛来练练手的,可是,刚写登陆的地方,就出了这么个不大不小的问题,汗一个先!
login.jsp文件全部代码:<%@ page language="java" import="java.util.*" %>
<%@ page session="true"%>
<%@ page contentType="text/html;charset=GB2312"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'Login.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<META content="text/html; charset=GB2312" http-equiv="Content-Type">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
This is my JSP page. <br>
<jsp:useBean id="login" class="login.Login" scope="page"/>
<%
request.setCharacterEncoding("GB2312");
if(request.getParameter("userName")!=null && request.getParameter("userName").equals(""))
{
String userName=request.getParameter("userName");
String userPas=request.getParameter("userPas");
userName=new String(userName.getBytes("ISO-8859-1"));
userPas=new String(userPas.getBytes("ISO-8859-1"));
login.setUserName(userName);
login.setUserPas(userPas);
out.println(userName+"<<<>>>"+userPas);
if(login.executeQuery())
{
session.setAttribute("userName",userName);
out.println(userName+"<<<>>>"+userPas);
response.sendRedirect("index.jsp");
}
}
%>
<%request.setCharacterEncoding("GB2312");%>
<DIV align=center>用户登陆</DIV><BR>
<form name="form1" method="post" action="login.jsp">
<table width="400" border="0" cellspacing="1" cellpadding="1" align="center">
<tr>
<td width="147" align="right">用户名:<br>
</td>
<td width="246" valign="top">
<input type="text" name="username" size="16" maxlength="25">
</td>
</tr>
<tr>
<td width="147" align="right">密码:</td>
<td width="246" valign="top">
<input type="password" name="passwd" maxlength="20" size="16">
</td>
</tr>
<tr>
<td width="147" align="right"></td>
<td width="246" valign="top">
<input type="submit" name="Submit" value="登陆">
<input type="reset" name="Submit2" value="取消">
</td>
</tr>
<tr>
<td colspan="2" align="center">
<BR>
默认用户名:aaa 默认密码:111
</td>
</tr>
<tr>
<td colspan="2" align="center">
<BR>
<p>还没有注册?<a href="index.jsp">注册</a></p>
</td>
</tr>
</table>
</form>
</body>
</html>
先不说代码写的对不对,但是中文就是显示成?了,我很是郁闷呀,而且我把这个jsp文件中的html代码复制出来,放到一个新建的html文件中,用ie打开,就可以显示出正确的中文,不知道哪里出了问题,还请大家帮下忙,谢谢了
就不需要getBytes("ISO-8859-1")
lz真是病急乱投医啊...
<%@ page contentType="text/html;charset=iso8859_1"%>
另外,我不知道这句是不是必须放在代码的最前面,
如果你用gb2312编码,在你的代码前,加上request.setCharacterEncoding("gb2312")应该是没有问题的,
如果显示出来的是乱码,不是问号就好办了,问号表示不能解码,而乱码表示你的浏览器设置的解码和你的文件编码不符合,所以只要不是问号就好办。
应该是提交前吧,我用打开jsp网页,就是出现了“?”
而且我用myeclipse保存jsp文件是就提示说什么是ISO8859-1,但是有不是ISO8859-1的字符,什么的,唉,我现在开始怀疑是myeclipse的问题了
如果是提交前就有问题,下面是决定该页面字符编码的地方
<%@ page contentType="text/html;charset=GB2312"%>
但是你的却没有问题...建议把这个项目直接放到tomcat/webapps/里面然后把web-inf配置一下,如果直接用tomcat是正常的,那摸肯定是myeclipse的设置问题了。
我没有用过myeclipse不能妄言,这些很强大的IDE很可能自动的做了相关配置...
mycelipse结合tomcat5然后打包,你在myeclipse里面写的工程,可以直接拷贝到tomcat/webapps这个目录里面,不需要手工拷贝,你在网页运行的jsp实际上也是运行的tomcat/webapps这个目录里的东东,
另外问下,你写jsp用什么编辑器的?jb还是什么?
我现在已经可以肯定是myeclipse的问题了,唉,但是还没找到解决问题的办法,方法试了n遍,就是不行,我现在有种想砸电脑的想法