Best way to parseDouble with comma as decimal separator?

前端 未结 10 750
暗喜
暗喜 2020-11-22 06:14

Following is resulting in an Exception:

String p=\"1,234\";
Double d=Double.valueOf(p); 
System.out.println(d);

Is there a bet

10条回答
  •  甜味超标
    2020-11-22 06:44

    You can use this (the French locale has , for decimal separator)

    NumberFormat nf = NumberFormat.getInstance(Locale.FRANCE);
    nf.parse(p);
    

    Or you can use java.text.DecimalFormat and set the appropriate symbols:

    DecimalFormat df = new DecimalFormat();
    DecimalFormatSymbols symbols = new DecimalFormatSymbols();
    symbols.setDecimalSeparator(',');
    symbols.setGroupingSeparator(' ');
    df.setDecimalFormatSymbols(symbols);
    df.parse(p);
    

提交回复
热议问题