jsp+Sql Server2000 中文乱码问题 我使用的是Jsp+Tomcat6.0+sql server2000,使用Select语句将记录选择显示出来在Windows下显示都没有问题,但是将网页放到freebsd下发现取出的中文都显示的是?号请教下高手是什么原因 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 response.setContentType("text/html;charset=GBK");或者response.setCharacterEncoding("gb2312");设置一下编码就好了! response.setContentType("text/html;charset=gb2312");或response.setCharacterEncoding("gb2312");设置一下编码就行了 给你两个方法!!!你看能用不?/////////数据库输出字符串的过滤 public static String SQLStr(String str){ if(str != null && str.length()>=1 && str.substring(0,1).equals("?")){ str = str.substring(1); } if(str == null || str.equals("") || str.equals(" ")){ str = " "; } while (str.indexOf("'") != -1) { str = str.substring(0, str.indexOf("'")) + "<br>" + str.substring(str.indexOf("'") + 1); } return str; } ///////汉化 public static String toChineseAndTrim(String str){ if(str==null){ str=""; } try{ byte b[]=str.getBytes("iso-8859-1"); str=new String(b); str=str.trim(); }catch(Exception e){ e.printStackTrace(); } return str; } 试一下设置一下freebsd下终端的显示字符格式, 操作系统语言是中文,显示中文字符 编辑/etc/sysconfig/i18n,修改为如下内容: LANG="zh_CN.GB2312" SUPPORTED="zh_CN.UTF-8:zh_CN:zh" SYSFONT="latarcyrheb-sun16" 或者 LANG=zh_CN.GB18030 LANGUAGE=zh_CN.GB18030:zh_CN.GB2312:zh_CN export LANG LANGUAGE 操作系统语言是英文,显示中文字符 编辑/etc/sysconfig/i18n,修改为如下内容: LANG="en_US" SUPPORTED="en_US.UTF-8:en_US:en" SYSFONT="latarcyrheb-sun16" 取出来之后把变量编码类型转化一下即可String str=new String("你的变量").getBytes("iso-8859-1"),"gbk"; 像这种问题有很多帖子,楼主何必浪费分数呢。以后有问题可以先在CSDN站内搜索一下,下面这个有好多种方法,找找看有没有适合的http://topic.csdn.net/u/20081205/13/c00edcf9-cc46-43eb-b2cf-96adb0c99f24.html 感觉大部分都是没看明白题目,我里面有过滤器了 用的是Tomact的SetCharacterEncodingFilter类 在页面属性里面将页面编码设为UTF-8 我以前也遇到过这个问题,第一种:你可以将jsp页面中的charset等于gb2312 第二种:你可以将sql2000换掉,最简单换成access试试(用导出将sql server数据导出到access中) 哈哈,我也遇到了,不知道是不是SQL2000JDBC的漏洞,有两种方法解决。1.换成用SQL2005JDBC连接2.用SQL2000JDBC 的Data Souce(连接池)方法连接 HTTP Status 500 - 帮忙看看 jsp分页程序求救。 struts2中文问题弄不懂..... 帮我看看这个JSF错误怎么解决?新手级问题 struts国际化的问题啊 Non-serializable attribute的错误如何处理? jsp 分页后结果集已耗尽 兄弟要一份上传文件的的代码,急需! jsp整合到iis后出现函数不正确 新手求教 现读取现在时间的代码 急求 java.io.IOException: 磁盘空间不足(导致验证码无法显示)
或者
response.setCharacterEncoding("gb2312");
设置一下编码就好了!
或
response.setCharacterEncoding("gb2312");
设置一下编码就行了
/////////数据库输出字符串的过滤
public static String SQLStr(String str){ if(str != null && str.length()>=1 && str.substring(0,1).equals("?")){
str = str.substring(1);
}
if(str == null || str.equals("") || str.equals(" ")){
str = " ";
}
while (str.indexOf("'") != -1) {
str = str.substring(0, str.indexOf("'")) + "<br>"
+ str.substring(str.indexOf("'") + 1);
}
return str;
}
///////汉化
public static String toChineseAndTrim(String str){
if(str==null){
str="";
}
try{
byte b[]=str.getBytes("iso-8859-1");
str=new String(b);
str=str.trim();
}catch(Exception e){
e.printStackTrace();
}
return str;
}
操作系统语言是英文,显示中文字符 编辑/etc/sysconfig/i18n,修改为如下内容: LANG="en_US" SUPPORTED="en_US.UTF-8:en_US:en" SYSFONT="latarcyrheb-sun16"
String str=new String("你的变量").getBytes("iso-8859-1"),"gbk";
http://topic.csdn.net/u/20081205/13/c00edcf9-cc46-43eb-b2cf-96adb0c99f24.html
第二种:你可以将sql2000换掉,最简单换成access试试(用导出将sql server数据导出到access中)
1.换成用SQL2005JDBC连接
2.用SQL2000JDBC 的Data Souce(连接池)方法连接