StringBuffer cont = new StringBuffer("");
User users[]=gameEngine.sendState(user);
        cont.append("<?xml version=\"1.0\" encoding=\"UTF-8\" ?>");
        cont.append("<items>");
        for (int i=0;i<3;i++){
         if(users[i]!=null){
        cont.append("<item>");
        cont.append("<lordNum>"+gameEngine.getLordNum()+"</lordNum>");
        cont.append("<doubleNum>"+gameEngine.getDoubleNum()+"</doubleNum>");
cont.append("<state>"+ users[i].getState()+"</state>");
cont.append("<ready>"+users[i].isReady()+"</ready>");
cont.append("<lord>"+users[i].isLord()+"</lord>");
cont.append("<sumScore>"+users[i].getSumScore()+"</sumScore>");
cont.append("<cards>"+users[i].getCards()+"</cards>");
cont.append("<getCards>"+users[i].getGetCards()+"</getCards>");
cont.append("<lordCards>"+gameEngine.getLordcards()+"</lordCards>");
                }
        }
        cont.append("</items>");
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/xml;"); 
我这个是 在struts action里输出的 XML格式的网业  在别的页面了传过来的中文都能显示正常不过输出XML就出问号显示不正常
我刚开始以为是显示层接值有问题不过 在地址兰里输入ACTION 地址看输出出来的中文都是问好~~ 希望大哥大姐小妹小弟们帮俺这个忙 这个恩情我会永远记在心里 永远崇拜您~~~ 谢谢您的帮忙 呵呵~。。 我是新来的 别扔石头哦~~ 呵呵谢谢!

解决方案 »

  1.   

    response.setCharacterEncoding("UTF-8");
    response.setContentType("text/xml;"); 
    倒过来呢?
      

  2.   

    是你的XML编码问题!你试下:cont.append(" <?xml version=\"1.0\" encoding=\"UTF-8\" ?>"); 
    换成:cont.append(" <?xml version=\"1.0\" encoding=\"GBK\" ?>"); 
      

  3.   

    <?xml version="1.0" encoding="GBK" ?> 
    - <items>
    - <item>
      <lordNum>0</lordNum> 
      <doubleNum>0</doubleNum> 
      <state>ready</state> 
      <ready>false</ready> 
      <lord>false</lord> 
      <userName>tcsoft</userName> 
      <userPoint>100000</userPoint> 
      <showCard>false</showCard> 
      <cardsNum>0</cardsNum> 
      <previousScore>0</previousScore> 
      <sumScore>0</sumScore> 
      <cards /> 
      <getCards /> 
      <lordCards>null</lordCards> 
      <seat>down</seat> 
      <message>tcsoft:gwagw}tcsoft:?}</message> 
      </item>
    - <item>
    还是不行啊.....最底下tcsoft:?}  后面就是个'啊'字  呵呵 有没有别的解决办法呢?
      

  4.   

    单个页面显示
    三楼正确!!如果涉及数据库就是这样
    补充:
    你的数据库设置也要进行相关设置
    例如MYsql  就要将
    my.ii的配置文件修改下:
    按顺序是下面这样default-character-set=GBKdefault-character-set=utf8重新导入你的数据!就可以了!不知道 你是否满意
      

  5.   

    我用的是java-bean 从javabean 里 读取信息 ajax读取xml显示出来 现在就是 直接看XML都显示问号555 麻烦大家了
      

  6.   

        public  List findTop(String sql,  int  top) {
          HibernateTemplate ht  =   this .getHibernateTemplate();
          ht.setMaxResults(top);
           return  ht.find(sql);
        }     /** 
         * 分页查询
         *  @param  sql String
         *  @param  firstRow int
         *  @param  maxRow int
         *  @return  List
          */ 
         public  List findPage( final  String sql, final   int  firstRow, final   int  maxRow) {
           return   this .getHibernateTemplate().executeFind( new  HibernateCallback(){
                 public  Object doInHibernate(Session session)  throws  SQLException,
                        HibernateException {
                   Query q  =  session.createQuery(sql);
                   q.setFirstResult(firstRow);
                   q.setMaxResults(maxRow);
                    return  q.list();
                   }
            });      
        }
    就是读数据库 时候查看几行。引用了别人的文章 呵呵 用spring托管了的话 可以查看 spring 数据库语法
      

  7.   

    response.setCharacterEncoding("gbk"); 
    response.setContentType("text/xml;");