文件中有如下使用“科学记数法”的数据:(文件不是Excel,为文本文件)
8.52E+04,8.57E+04,2.99E+00,2.94E+02,2.53E+00,4.12E-03,
使用Double.parseDouble() 转换后是85200.0;85700.0
我不需要最后这个0怎么办呢?
有没有办法实现Excel中那样,设置单元格格式为常规,直接恢复原值。
Excel中转换后的数据如下:
85200 85700 2.99 294 2.53 0.00412

解决方案 »

  1.   

    用java.text.NumberFormat类可以解决。
      

  2.   

    我没有把我想问的表达清楚!
    用NumberFormat类可以实现去除那个小数点后的0。
    例如,8.52E+04
    但是保存后的String却是85,200。存在逗号的问题。可以把用NumberFormat类转换的代码贴一下么?请看看下面的代码
    String[] str = { "8.52E+04", "8.57E+04", "2.99E+00", "2.94E+02",
    "2.53E+00", "4.12E-03" };
    for (int i = 0; i < str.length; i++) {
    NumberFormat.getNumberInstance().format(Double.parseDouble(str[i]));
    }
    怎么利用NumberFormat类达到Excel中那样的效果呢?
    我调了半天,也没打到那样的效果啊!
      

  3.   

    设置一下这个:setDecimalSeparatorAlwaysShown(false)
    另外,建议你查一下Java API DOC中该类的说明,一看就明白了。给个小建议:尽量别总是希望别人直接把代码给你,因为缺少了自己动脑的过程。最重要的是,自己找找文档,还能获得其他的知识以及自己解决问题的能力。