#java #jsp #formatting #jstl
#java #jsp #форматирование #jstl
Вопрос:
Я хочу использовать fmt:formatNumber
для отображения следующего:
.8 => 80%
-.8 => -80%
1721 => 1,721
1721 => 1,721
-7876 => -7,876
ОБНОВЛЕНИЕ: формат отлично работает для процентов и группировки, но он не так хорошо работает для помещения a
перед числом, как в следующем:
.8 => 80%
1721 => 1,721
Как я могу это сделать?
Ответ №1:
Вы можете использовать %
шаблон для «умножения на 100 и отображения в процентах». Я думаю, в вашем случае вам понадобится что-то вроде этого:
// if num < 1 amp;amp; num > -1 (or another logic)
<fmt:formatNumber value="${num}" format="%" />
// else
<fmt:formatNumber value="${num}" format="' '###,###;'-'###,###" /> // show sign
ОБНОВЛЕНИЕ: вы также можете использовать этот метод:
// if num < 1 amp;amp; num > -1 (or another logic)
<fmt:formatNumber value="${num}" type="percentage" />
// else
<fmt:formatNumber value="${num}" type="number" groupingUsed="," />
Комментарии:
1. Обновление для тех, кто сейчас читает этот вопрос: свойство format теперь является шаблоном, то есть шаблоном=»‘ ‘###,###;’-‘###,###»