我以文本在excl输入 9901  到程序读出来 就成了 9901.0 后面多了一个讨厌的.0数据库里也是String 类型的   有这个.0没办法判断是 用户输入错误  
郁闷了很久了   请各位大哥们帮说下怎么做

解决方案 »

  1.   

    那是EXCEL太聪明了吧 你要改下EXCEL的数字格式就行了或是用JAVA把它后面的弄掉
      

  2.   

    a=1.0  ,1.2,1.1if((int)a==a){
      return (int)a;
    }else{
      return a;
    }
      

  3.   

    cell.getRichStringCellValue().getString();
      

  4.   

    cell.getNumericCellValue()是double的
    你只能强转了,或者用程序把后面的.0去掉
      

  5.   

    我也是刚接触POI,对API也不是很熟悉,正好查问题时搜到楼主的贴子。
    不知道是不是Apache为了能更广泛的取到Cell值,所以没有专门为Integer定义的方法。可以试试先取到Double的值,然后做判断,如果浮点部分的值不等于0,那肯定就是用户输入的。在此可以返回一些信息。如果等于0,那就是Double转型时生成的“.0000”,楼主大可以直接强转了。这个思路不知道能不能帮助楼主