当我excel中数字超过13位的时候,java读取的时候,变成了科学计数法了,我不希望这样,我希望还是以完整的数字显示给读取出来,请问有什么办法哦?

解决方案 »

  1.   

    // 添加Number对象数据的格式
    NumberFormat nf1 = new NumberFormat("0_ ");
    WritableCellFormat wcfN1 = new WritableCellFormat(nf1);
      

  2.   

    当Excel存储超过11位的整数时,用会用双精度浮点型数据来进行存储。然而这个浮点数的有效位数只有15位。楼主你说读出来是科学计数法,你可能是用System.out.println显示这个数字的。这个确实是以科学计数法显示。你可以用下一句显示,就不是科学计数法了。public class Test{
        public static void main(String args[]){
            double d=1234.5678901234567890123456d;
            System.out.printf("%.20f\n",d );
            System.out.println(d);
        }
    }