Как изменить десятичный разделитель DecimalFormat с запятой на точку / точку?

У меня есть этот маленький сумасшедший метод, который преобразует значения BigDecimal в красивые и удобочитаемые строки.

private String formatBigDecimal(BigDecimal bd){
    DecimalFormat df = new DecimalFormat();
    df.setMinimumFractionDigits(3);
    df.setMaximumFractionDigits(3);
    df.setMinimumIntegerDigits(1);
    df.setMaximumIntegerDigits(3);
    df.setGroupingSize(20);
    return df.format(bd);
}

Однако он также создает так называемый разделитель группировки "," , который делает все мои значения выводятся следующим образом:

xxx,xxx

Мне нужно, чтобы разделитель был точкой или точкой, а не запятой. Кто-нибудь знает, как совершить этот маленький подвиг?

Я прочитал это и, в частности, это до смерти, но я не могу найти способ сделать это. Я неправильно подхожу к этому? Есть ли более элегантный способ сделать это? Возможно, даже решение, учитывающее различные представления локальных номеров, поскольку запятая была бы идеальной по европейским стандартам.

191
задан Kevin Panko 24 April 2014 в 03:13
поделиться