一个简单JSP输出问题????

jkxb315416 2007-03-04 08:54:55
我的JSP只能输出英文,不能输汉字,。
我搞汉字进去,出现的是乱码
请大家指点。
...全文
310 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
laiseeme 2007-03-07
  • 打赏
  • 举报
回复
<%--下面三句解决所有中文乱码问题--%>
<%@page pageEncoding="gb2312"%>
<%@page contentType="text/html; charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>

GBK也行,去看看一些jsp的书 上面都有的
luyang1016 2007-03-07
  • 打赏
  • 举报
回复
<%--下面三句解决所有中文乱码问题--%>
<%@page pageEncoding="gb2312"%>
<%@page contentType="text/html; charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>

==============

基本正确,但是这个方法,url里面的汉字出现乱码,你肯定无法解决。
lcy1069 2007-03-07
  • 打赏
  • 举报
回复
GBK
frilly 2007-03-07
  • 打赏
  • 举报
回复
首先,对于所有的页面应该指定为GBK编码,也就是包含如下指令:

<%@ page contentType="text/html;charset=GBK" language="java" %>

第二步,修改Tomcat目录下的web.xml文件,在我电脑上的路径为C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\server.xml。在这个文件里有一个Connector节点,为其增加一个属性URIEncoding属性,并为该属性赋值为GBK,修改结果如下:


<Connector port="80" maxHttpHeaderSize="8192"

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

enableLookups="false" redirectPort="8443" acceptCount="100"

connectionTimeout="20000" disableUploadTimeout="true"

URIEncoding="GBK" />

第三步,添加一个Filter用于转码。

对于Filter该怎么写,完全不用你操心,Tomcat自带一个非常完美的例子,你只需要把该例子的代码原封不动的copy到你自己的类里面就OK了
在我的系统中,该例子位于C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\servlets-examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.java
最后一步,修改你的Web应用程序的配置文件,将这个Filter添加进去。找到你自己的Web项目的Web.xml文件(注意啊,不是Tomcat中的Web.xml文件),为Webapp节点增加2个子节点:


<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>hello.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>

<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

至此,已经能够解决中文问题

qwerfc 2007-03-06
  • 打赏
  • 举报
回复
www.java2008.com
jianfengqu 2007-03-06
  • 打赏
  • 举报
回复
<%--下面三句解决所有中文乱码问题--%>
<%@page pageEncoding="gb2312"%>
<%@page contentType="text/html; charset=gb2312"%>
<%request.setCharacterEncoding("gb2312");%>
LYYONAB 2007-03-06
  • 打赏
  • 举报
回复
<%@ page contentType="text/html;charset=gb2312" %>

这样就OK了
iider 2007-03-06
  • 打赏
  • 举报
回复
<%@ page language="java" pageEncoding="*****"%>
把****换成输出的字符集 如:gbk,utf-8等
KevinXie 2007-03-06
  • 打赏
  • 举报
回复
做一个中文编码过滤器的filter不就得了
wang2438545 2007-03-04
  • 打赏
  • 举报
回复
我也遇到过这样的问题,基本上在网上查到的方法都试过,都没用.但后来我IE浏览器的编码设为UNICODE之后,能显示绝大部分中文了,但还是有些乱码,我也不知道该怎么解决.
javaors 2007-03-04
  • 打赏
  • 举报
回复
编码设置问题 处理办法有很多 到网上搜搜有很多类似问题。
awusoft 2007-03-04
  • 打赏
  • 举报
回复
晕哦,应该是输出的代码
awusoft 2007-03-04
  • 打赏
  • 举报
回复
可否把输入的代码放上来呀?一个JSP显示的编码方式要设为GBK或者gb...的

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧