Marc Diethelm
Marc Diethelm

Reputation: 1202

Can JSTL fmt:formatNumber be used to get this output: "1 234.56"?

I'm trying to get numbers formatted in this specific format:

"1 234.56"

So, two decimals, separated by a dot. And grouping thousands with a space char (optionally a single quote). The input values will never be larger than 9999.99.

I tried using patterns fo this, and even playing around with locales, but to no avail.

Upvotes: 6

Views: 12521

Answers (1)

rickz
rickz

Reputation: 4474

Here is one way.

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<c:set var="val" value="9999.99" /> 
<fmt:formatNumber value="${val}" pattern="#,###.##" var="pat" /> 
${fn:replace(pat, ",", " ")}

Upvotes: 9

Related Questions