Printar valor de um double sem utilizar "notação"

5 respostas
Mikhas

Hey galera,

Estou desenvolvendo meu sisteminha lol aqui e tenho que jogar para meu jsp alguns valores grandes (Double).
O problema é que esta sendo printado os valores com uma especie de notação cientifica. Ex valor = 2500000.00 -> toString() -> 2.5E7.

Oque eu posso fazer para imprimir o valor completo?

5 Respostas

T

import java.text.*; // Como é um JSP e não sei o que você está usando, só vou incluir o nome de algumas // APIs, para ver o que você pode fazer. class ImpressaoNotacaoNormal { public static void main(String[] args) { double d = 250000000.00; // Usando java.text.DecimalFormat NumberFormat nf1 = new DecimalFormat ("#,##0.00"); System.out.println (nf1.format (d)); // imprime 250.000.000,00 NumberFormat nf2 = new DecimalFormat ("###0.00"); System.out.println (nf2.format (d)); // imprime 250000000,00 // Usando java.util.Formatter (ou String.format) String s = String.format ("%.2f", d); System.out.println (s); // imprime 250000000,00 } }

Mikhas

Cool…

E como eu uso isso com Expression Language?

Eu defini o DecinalFormat no topo da minha pagina e o adicionei como atributo

<%
		DecimalFormat normal = new DecimalFormat("##.##");		
		request.setAttribute("formater", normal);
	%>

Só que não sei como eu invoco o metodo agora.
Dei uma pesquisada em varias maneiras de fazer isso mas não esta dando certo.
ja tentei:

${formater.format(perfil.salarioBase)}
${formater.format[perfil.salarioBase]}
${formater['format(java.lang.Double)'](perfil.salarioBase)}

Só que nenhum funciona :frowning:

T

Talvez você tenha de usar aquela tag <fmt>, algo como:

<fmt:formatNumber value="${perfil.salarioBase}" type="currency" />

http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/fmt/formatNumber.html

Mikhas

thingol:
Talvez você tenha de usar aquela tag <fmt>, algo como:

<fmt:formatNumber value="${perfil.salarioBase}" type="currency" />

http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/fmt/formatNumber.html

É isso ai, funcionou.
Nunca tinha ouvido falar dessa tag lib.

Valew :thumbup:

T

Beleza, valeu para mim também.

Eu não tenho costume de usar JSP (os poucos JSPs que vejo são muito antigos e não usam EL nem essa tag library <fmt>.) Portanto tive de dar uma busca (olhei no tutorial do J2EE).

Criado 28 de abril de 2009
Ultima resposta 29 de abr. de 2009
Respostas 5
Participantes 2