我把%catalina_home%/conf/server.xml里的connector(port默认为8080,我现改为8081了)元素里加了一个参数URIEncoding="utf-8",
随后,我写了一个jsp页面如下:
<%@ page contentType="text/html;charset=gb2312" %>
<%
String value=(String)request.getParameter("name");
out.print(new String(value.getBytes("utf-8"),"gb2312"));
out.print(new String(value.getBytes("ISO-8859-1","gb2312"),%>
${param.name}--------------------------------
在浏览器里写的url为http://localhost:8081/TagFile/taguse.jsp?name=张三
用第一个out输出是一堆乱码,第二个out和EL输出的是四个?号.
请大家帮我分析一下其原因过程啊.
-------------------------
我都整了一天啦,怎么都不成啊.
随后,我写了一个jsp页面如下:
<%@ page contentType="text/html;charset=gb2312" %>
<%
String value=(String)request.getParameter("name");
out.print(new String(value.getBytes("utf-8"),"gb2312"));
out.print(new String(value.getBytes("ISO-8859-1","gb2312"),%>
${param.name}--------------------------------
在浏览器里写的url为http://localhost:8081/TagFile/taguse.jsp?name=张三
用第一个out输出是一堆乱码,第二个out和EL输出的是四个?号.
请大家帮我分析一下其原因过程啊.
-------------------------
我都整了一天啦,怎么都不成啊.
解决方案 »
- action跳转页面
- jsp页面获取数据后怎样生成HTML静态页面?
- 请问ext提交form如何使用struts2的domain model
- httpclient模拟登陆网站的问题 请高手解答 谢谢
- 关于ValueList 的简单问题
- String errmsg="???!";问题
- 请高手帮忙,触发器的问题
- 前几天可以连接到SQLServer的代码现在都出错了,大家帮帮看看
- 100分求playframework的邮件发送问题。
- java里申明一个变量时必须初始化吗?
- 高分求解!怎么在button的onclick事件里去掉onMouseOver或onMouseOut事件.
- 一个页面中放了两个frame,A、B,我想在A的form提交后刷新B,如何作?
<%@ page contentType="text/html;charset=gb2312" %>
<%
request.setCharacterEncoding("GBK"); //设置字符集
String value=(String)request.getParameter("name");
out.print(value);%>
<%@ page contentType="text/html;charset=utf8" %>
<%
String value=(String)request.getParameter("name");
out.print(new String(((String)str).getBytes("ISO-8859-1"),"GBK"));
%>
<%@ page contentType="text/html;charset=utf8" %>
<%
String value=(String)request.getParameter("name");
out.print(new String(((String)value).getBytes("ISO-8859-1"),"GBK"));
%>
String trans(Object chi){
return trans(chi.toString());
}
String trans(String chi){
String result=null;
byte temp[];
try{
temp=chi.getBytes("iso-8859-1");
result=new String(temp);
}
catch(UnsupportedEncodingException e){
System.out.println(e.toString());
}
return result;
}
%>
<%=name.trans(request.getParameter("name"))%>
试试这个
<%@ page contentType="text/html;charset=utf8" %>
<%
String value=(String)request.getParameter("name");
out.print(new String(((String)value).getBytes("ISO-8859-1"),"GBK"));
%>
--------------------------------
也没成功,
如果把%catalina_home%/conf/server.xml中的<Connector>URIEncoding值改为"gbk"在jsp中不作转化都是可以的,
只是我不明白,utf-8编码这个老头子,如何使它才能成啊.
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.io.*"%>
<%!String trans(String chi)
{
String result=null;
byte temp[];
try
{
temp=chi.getBytes("iso-8859-1");
result=new String(temp);
}
catch(UnsupportedEncodingException e)
{
System.out.println(e.toString());
}
return result;
}
%>
将此函数放入一个文件中,例如trans.inc中,只要在你想转换的文件中加上<%@ include file="trans.inc"%>就能使用!
String value=(trans)request.getParameter("name");肯定成功
LZ不妨试一试。