如何截断小数前的数字?

时间:2012-08-08 06:40:25

标签: java number-formatting

以下代码截断小数后的数字

 NumberFormat blah= new DecimalFormat("#.##");

但是我想从数字

之前的数字中截断额外的零

例如

0000000000000.00  -> 0.00
00000100000.00 -> 100000.00
000000175000.00 -> 175000.00

2 个答案:

答案 0 :(得分:1)

BigDecimal myNumber = new BigDecimal("00000000175000.000000");
BigDecimal truncatedNumber = myNumber.setScale(3, BigDecimal.ROUND_HALF_UP);

答案 1 :(得分:1)

除非您想以这种方式打印,否则您不需要数字格式。只需取出字符串并使用Double.parseDouble(),然后打印格式:

// "#.00" always shows 2 digits after decimal, "#.##" is optional if zeros are after decimal
NumberFormat blah = new DecimalFormat("#.00");

String s = "00000100000.00";
System.out.println(blah.format(Double.parseDouble(s)));