根据格式字符串格式化数字字符串

时间:2013-04-09 09:09:24

标签: java format

我有一个表示数字的字符串(例如1234.56)和表示格式的字符串(例如1,234.56或1 234.56或1234,56 ......),需要根据格式String格式化数字字符串。两个字符串都给出了。

一些代码可以提供更好的支持:

public static void main(String[] args) {
    String number = "1000.0";
    formatNumber(number, "1,234.56"); //Should be 1,000.00
    formatNumber(number, "1 234.56"); //Should be 1 000.00
    formatNumber(number, "1234,56"); //Should be 1000,00
}

public static String formatNumber(String number, String format) {
    return ???
}

最好的方法是什么?

由于 保罗

1 个答案:

答案 0 :(得分:2)

这三行应该做。

String pattern = format.replaceAll("\\d", "#");
DecimalFormat myFormatter = new DecimalFormat(pattern);
return myFormatter.format(value);

我正在写作,所以如果遇到问题请回信