Linux下不是用GB2312 GBK 而是用UTF8
解决方案 »
- 求助,db2对有主键和约束的表删除列后报错
- PHP与JAVA在WEB开发上的比较
- 谁能解释下关于replaceAll的一个小问题
- Oracle命令行中让所有属性在一行显示
- script变量值赋给jsp
- 请各位高手帮帮忙啊,帮我看一下
- 如何实现从hibernate的持久化对象直接转化成xml??
- 小弟糊涂了,tomcat5.0 + jsp + MYSQL MYSQL驱动怎么配置?
- 那位能提供一个web方式的page面页,类拟CS中的,怎么制作?在网上找了半天没找到。
- 有关javamail的错误AuthenticationFailedException(急)
- 网站登录页面成了空壳子!!!
- dynamicJavascript验证的问题。
<1>把%TOMCAT安装目录%/ webapps\servlets-examples\WEB-INF\classes\filters\SetCharacterEncodingFilter.class文件拷到你的webapp目录/filters下,如果没有filters目录,就创建一个.
<2>在你的web.xml里加入如下几行:
<filter> <filter-name>Set Character Encoding</filter-name> <filter-class>filters.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>
<3>打开tomcat的server.xml文件,找到区块,加入如下一行:
URIEncoding=”GBK”
完整的应如下:
<Connector port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="GBK"/>
<4>重启tomcat
另:这并非我原创,摘自J道网站,我非常感谢这篇文章解决了我的中文传输问题,,希望楼主也能受益
有没有其他方法呢?很多方法都尝试过了,最终传过来的仍然是问号~~~
试试这个:
/**
* 将文件名中的汉字转为UTF8编码的串,以便下载时能正确显示另存的文件名.
* 纵横软件制作中心雨亦奇2003.08.01
* @param s 原文件名
* @return 重新编码后的文件名
*/
public static String toUtf8String(String s) {
StringBuffer sb = new StringBuffer();
for (int i=0;i<s.length();i++) {
char c = s.charAt(i);
if (c >= 0 && c <= 255) {
sb.append(c);
} else {
byte[] b;
try {
b = Character.toString(c).getBytes("utf-8");
} catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j < b.length; j++) {
int k = b[j];
if (k < 0) k += 256;
sb.append("%" + Integer.toHexString(k).
toUpperCase());
}
}
}
return sb.toString();
}
用遍了方法
用户名1:<%=myRequest.getParameter("masterid")%><br>
用户名2:<%=new String(myRequest.getParameter("masterid").getBytes("UTF-8"),"GBK")%><br>
用户名3:<%=new String(myRequest.getParameter("masterid").getBytes("ISO8859-1"),"GBK")%><br>
用户名4:<%=StringParse.ISO8859ToGBK(myRequest.getParameter("masterid"))%><br>(StringParse.ISO8859ToGBK是在StringParse类里边的一个转换字符编码的函数)
还是不行啊,4个全部显示的乱码!!!
另外还加了
<%@ page contentType="text/html;charset=GBK"%>
<%request.setCharacterEncoding("GBK");%>等等所有的能转化成中文的方法几乎尝试遍了,没有一个能成功的!!!怎么搞得啊,为什么Linux那么不给我面子呢????!!!!