2015-05-13 3 views
2

Я хотел был бы сделать это: если у меня есть 1234.5678, я хотел бы 1 234.57. Я попробовал несколько вещей, как:Круглый номер в java и добавить разделитель

Object theValue = theValues.get(theHeaderName); 
DecimalFormatSymbols theSymbols = new DecimalFormatSymbols(); 
theSymbols.setGroupingSeparator(' '); 
DecimalFormat theFormatter = new DecimalFormat("#.00", theSymbols); 
el.text(theFormatter.format(theValue)); 

Но я не удается иметь закругление и разделитель.

+0

Взгляните на этот вопрос http://stackoverflow.com/вопросы/5323502/как к посаженным-тысячи-сепаратор-в-Явы. Он имеет дело с разделителями. – NaN

+1

Просто используйте это как формат - ###, ###. 00 – Zyga

ответ

2

Если вы переписываете стандартный формат #.00, у вас нет разделителя группировки в вашем формате. Для вашего ожидаемого случае вы должны включить группировку Seperator снова в пользовательский формат:

символы определения
DecimalFormat theFormatter = new DecimalFormat("#,###.00", theSymbols); 

Узор можно найти в Doc

+0

Спасибо, он отлично работает. :) – Kaki

+0

Работает ли разделитель на миллионы, тысячи миллионов и т. Д. Тоже? – Kaki

+0

Несомненно. по умолчанию groupizes равно 3 (я думаю), но вы можете изменить его с помощью 'setGroupingSize (int)' – ceekay

Смежные вопросы