将几个较长的字符串连拉成一个字符串,在模拟器上没有问题.在真机上就只有第一个字符串,后面的字符就没有了..这是什么原因..??

解决方案 »

  1.   

               for(j=2;j<=patrolData.size();j++){
                     if(messageTemp==null){
                         messageTemp="ser"+(j-1)+":"+(String)patrolData.get("serial"+j);
                     }else{
                         messageTemp=messageTemp+"ser"+(j-1)+":"+(String)patrolData.get("serial"+j);
                     }
                         System.out.println(messageTemp);
                 }
      

  2.   

    你把System.out.println(messageTemp); 
    放到循环里,看看每次取到的有没有数据啊,
      

  3.   

    patrolData.size() 这个是什么东西,看看这个是不是2
      

  4.   


    跟这个没有关系的.因为在模拟器上都能读出所有的字符串..只是在真机上才会出现只能读出一个字符串的现象/..
    to tinzeng:
    StringBuffer也用过了.同样的结果...
      

  5.   

    模拟器中支持
    String str ="字符串";
    str=str.intern();    //将字符对象串转化成字符串
    if( str == "字符串" )   //可以返回真真机上是不支持该方法只能用
    if( str.equals("字符串") )   //才能返回真 
    如果也用上面的方法 得不到想要的结果的。
    所以我大胆猜测:
         for(j=2;j <=patrolData.size();j++){ 
                    if(messageTemp==null){ 
                        messageTemp="ser"+(j-1)+":"+(String)patrolData.get("serial"+j); 
                    }else{ 
                        messageTemp=messageTemp+"ser"+(j-1)+":"+(String)patrolData.get("serial"+j); 
                    } 
                        System.out.println(messageTemp); 
                }
    在真机上就变成了
         for(j=2;j <=patrolData.size();j++){ 
                  System.out.println(messageTemp); 
                }
    所以始终只有1条语句?不知道楼主说的1个字符串是什么样子的?
      

  6.   

    是不是显示的问题啊??我之前做项目就是这样的,那个SQL语句太长了,就只显示一部分,其实是都取到了。
      

  7.   

    看看这个patrolData.size() 值