excel中的数值我只想保留4位小数。
excel中单元格是数字型,原值是100.12345,然后设置单元格只显示4位小数,这时变为100.1235,但通过jxl读取时
Cell cell = sheet.getCell(0, 0);
System.out.println(cell.getContents());
输出值是100.1234
Cell cell = sheet.getCell(0, 0);
NumberCell nc=(NumberCell)cell;
System.out.println(nc.getValue());
输出值是100.12345
两个都不是我想要的值,但如果原值是100.12346,则第一次输出值是100.1235就是正确的。
好像这里面是五舍六入。
不知道除了用第二种方法读取数值,然后用
BigDecimal b=new BigDecimal(nc.getValue()).setScale(4,BigDecimal.ROUND_HALF_UP);
四舍五入外还有没有其他解决方法?
excel中单元格是数字型,原值是100.12345,然后设置单元格只显示4位小数,这时变为100.1235,但通过jxl读取时
Cell cell = sheet.getCell(0, 0);
System.out.println(cell.getContents());
输出值是100.1234
Cell cell = sheet.getCell(0, 0);
NumberCell nc=(NumberCell)cell;
System.out.println(nc.getValue());
输出值是100.12345
两个都不是我想要的值,但如果原值是100.12346,则第一次输出值是100.1235就是正确的。
好像这里面是五舍六入。
不知道除了用第二种方法读取数值,然后用
BigDecimal b=new BigDecimal(nc.getValue()).setScale(4,BigDecimal.ROUND_HALF_UP);
四舍五入外还有没有其他解决方法?
如果结果是负无穷大或任何小于或等于 Long.MIN_VALUE 的值,那么结果等于 Long.MIN_VALUE 的值。
如果参数是正无穷大或任何大于或等于 Long.MAX_VALUE 的值,那么结果等于 Long.MAX_VALUE 的值。参数:
a - 舍入为 long 的浮点值。
返回:
舍入为最接近的 long 值的参数值。