Ajuda com formatNumber JSTL

4 respostas
K

Olá..

Eu preciso formatar alguns valores no JSP, para isso estou usado JSTL. Para alguns casos a formatação funciona bem, mas seu eu tentar formatar um valor que vem do banco de dados como 25 em 0,25 não funciona.

Estou fazendo assim:

<c:set var="valor" value="25" />

<fmt:setLocale value="pt-BR" />

<fmt:formatNumber value="${valor}" type="currency"/>

Se o valor for igual a 1500, a formatação funciona perfeitamente e fica assim:

R$ 1.500,00

Agora se o valor for 25, ele formata assim:

R$ 25,00

Alguém pode dar uma ajuda ?

Obrigado!

4 Respostas

A

Meu velho, se o valor esta vindo 25 do banco ele esta formatando certo, para formatar como 0,25 ele deve vim como 0.25 do banco

caso mesmo assim vc queira que ele mostre 0,25 , faz assim o

&lt;c:set var="valor" value="25" /&gt;
 
 &lt;fmt:setLocale value="pt-BR" /&gt;
 
 &lt;fmt:formatNumber value="${valor/100}" type="currency"/&gt;

ou

&lt;c:set var="valor" value="0.25" /&gt;
 
 &lt;fmt:setLocale value="pt-BR" /&gt;
 
 &lt;fmt:formatNumber value="${valor}" type="currency"/&gt;
I
Ressuscitando... Estou com o seguinte problema.
<c:set var="valor" value="0.25" />  
   
 <fmt:setLocale value="pt-BR" />  
   
 <input type="text" value="<fmt:formatNumber value="${valor}" type="currency"/>">

Retorna R$ 0,25

preciso que ele retorn no campo apenas 0,25 sem R$

tentei assim:
<c:set var="valor" value="0.25" />  
   
 <fmt:setLocale value="en" />  
   
 <input type="text" value="<fmt:formatNumber value="${valor}" type="currency"/>">
e retornou $0.25

sem a tag setLocale ele retorna o padrão do servidor, no caso, R$0,25, alguem sabe como fazer?

I

iae pessoal, alguem tem uma luz***? :slight_smile:

N

é só deixar o currencySymbol vazio assim:

<fmt:formatNumber value="${valor}" currencySymbol="" type=“currency” />

Criado 1 de abril de 2006
Ultima resposta 5 de ago. de 2009
Respostas 4
Participantes 4