请教,为什么request动作获取的参数中文显示成问号
<%@ page language= "java " contentType= "text/html;charset=gb2312 "%>
<html>
<head> <title> include动作范例页面 </title> </head>
<body>
<div align= "center ">
<jsp:include page= "forward_action_file1.jsp ">
<jsp:param name= "bookName " value= "JSP程序设计起步与提高 "/>
<jsp:param name= "authorName " value= "方逵 "/>
</jsp:include>
</div> </body>
</html>
forward_action_file1.jsp
<%@ page language= "java " contentType= "text/html;charset=gb2312 "%>
<html>
<head> <title> in动作范例页面 </title> </head>
<body>
<div align= "center ">
<%out.println( " <font size=5> include动作演示 </font> ");%> <br>
<%out.println( "书名: ");%>
<%=request.getParameter( "bookName ")%> <br>
<%out.println( "作者: ");%>
<%=request.getParameter( "authorName ")%> <br>
</div> </body>
</html>
运行结果如下
include动作演示
书名: JSP?????????
作者: ??
[解决办法]
写个filter进行转码。
关于转码网上有N多例子
[解决办法]
response.setContentType( "text/html; charset=GBK ");
request.setCharacterEncoding( "GB2312 ");
[解决办法]
request.setCharacterEncoding( "GB2312 ");
[解决办法]
request.setCharacterEncoding( "GB2312 ");
[解决办法]
是呀,建议用转码过滤一下
网上很多的
[解决办法]
你把IE的编码方式改成简体中文应该就可以
[解决办法]
http://www.hmilyld.cn/post/519.htm
前两天刚自己看着资料捣鼓了个.
[解决办法]
去这里看看吧:
http://www.javadingle.com
[解决办法]
保证你的数据传输过程中用到的class或jsp编码格式一致。
[解决办法]
get方式。。。用request.setCharacterEncoding( "GB2312 ");无效!!!
请使用:
new String (request.getParameter( "bookName ").getBytes( "ISO-8859-1 "), "GBK ")
[解决办法]
最好用过滤器
以后就不用再该别的了
[解决办法]
要转换码
[解决办法]
呵呵,宣传一篇自己的文章:
《又谈乱码问题解决 》
http://www.blogjava.net/richardeee/archive/2007/01/23/Chinese_encoding_problem_for_all.html
[解决办法]
有个可用的过滤器可以解决
要的话给我发邮件把
qiudawei115@sohu.com
[解决办法]
String bookName=request.getParameter( "bookName ");
byte[] b=bookName.getBytes( "ISO-8859-1 ");
bookName=new String(b);
书名: <%=bookName%>
[解决办法]
要转码,最好写个类,用时直接调用
[解决办法]
编码问题,简单点的话 在JSP里面加入 <meta charset= "gb2312 ">
SERVLET加入response.setContentType( "gb2312 ");