如何在12位数字符串中显示最多2位小数

时间:2014-10-21 07:45:07

标签: java

我有一个12位数的字符串来n字符串格式000000003625我想让它36.25我将如何做请帮助我

while ((line = rd.readLine()) != null) {
    //Parse our JSON response 
     JSONParser j = new JSONParser();

     JSONObject jsonObject = (JSONObject)j.parse(line); 

     String   resCode  = (String) jsonObject.get("RSP_CODE");

这里我得到字符串格式

4 个答案:

答案 0 :(得分:4)

这可能是您所需要的:

BigDecimal bd = new BigDecimal("000000003625").divide(new BigDecimal(100));

答案 1 :(得分:4)

将字符串转换为数字并除以100(浮点):

double d = Double.parseDouble("000000003625") / 100.0;

格式化结果:

DecimalFormat df = new DecimalFormat("0.00");
String result = df.format(d);

或者如果浮点不精确可能是个问题,请使用BigDecimal进行解析和除法,然后格式化生成的BigDecimal

BigDecimal bd = new BigDecimal("000000003625")
                        .divide(new BigDecimal(100));
DecimalFormat df = new DecimalFormat("0.00");
String result = df.format(bd);

Live Example

答案 2 :(得分:0)

您可以将其解析为long,然后将其除以100

答案 3 :(得分:-1)

为了清楚起见,如果输入字符串是000000003625,则要显示36.25。这是您可能想要使用的代码。

String val = "000000003625";
Float i = Float.parseFloat(val);
System.out.println(i / 100);