我使用的是Jsp+Tomcat6.0+sql server2000,使用Select语句将记录选择显示出来
在Windows下显示都没有问题,但是将网页放到freebsd下发现取出的中文都显示的是?号
请教下高手是什么原因

解决方案 »

  1.   

    response.setContentType("text/html;charset=GBK");
    或者
    response.setCharacterEncoding("gb2312");
    设置一下编码就好了!
      

  2.   

    response.setContentType("text/html;charset=gb2312");

    response.setCharacterEncoding("gb2312");
    设置一下编码就行了
      

  3.   

    给你两个方法!!!你看能用不?
    /////////数据库输出字符串的过滤
    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;
    }
      

  4.   

    试一下设置一下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" 
      

  5.   

    取出来之后把变量编码类型转化一下即可
    String str=new String("你的变量").getBytes("iso-8859-1"),"gbk";
      

  6.   

    像这种问题有很多帖子,楼主何必浪费分数呢。以后有问题可以先在CSDN站内搜索一下,下面这个有好多种方法,找找看有没有适合的
    http://topic.csdn.net/u/20081205/13/c00edcf9-cc46-43eb-b2cf-96adb0c99f24.html
      

  7.   

    感觉大部分都是没看明白题目,我里面有过滤器了 用的是Tomact的SetCharacterEncodingFilter类
      

  8.   

    在页面属性里面将页面编码设为UTF-8
      

  9.   

    我以前也遇到过这个问题,第一种:你可以将jsp页面中的charset等于gb2312
                         第二种:你可以将sql2000换掉,最简单换成access试试(用导出将sql server数据导出到access中)
      

  10.   

    哈哈,我也遇到了,不知道是不是SQL2000JDBC的漏洞,有两种方法解决。
    1.换成用SQL2005JDBC连接
    2.用SQL2000JDBC 的Data Souce(连接池)方法连接