Formatando valor em uma célula da JTable?

3 respostas
F

Salve galera…

Seguinte, eu tenho uma JTable que recebe alguns valores para serem exibidos, eu consigo formatar valores com 2 casas decimais mas com mais que isso não tenho nem idéia de como seja fazer.

por exemplo, eu tenho o numero 999.99 que tenho guardado no banco de dados, para exibir no JTable eu exibo ao invés do ponto a virgula, ficando assim 999,99. Faço isso usando String.format

String.format("%.2f", rs.getDouble("campovalor")); //aqui recebo os 999.99 e exibo como 999,99

Agora quando recebo valores por exemplo…1000.00 eu formato só o ponto para virgula ficando assim: 1000,00
Eu quero fazer como que fique 1.000,00 para exibição.

Como seria isso ???

obrigado

3 Respostas

D

Fala Fernando, blz?

Cara fiz agora bem rápido:

public static void main(String[] args) {
		
		DecimalFormat decimalFormat = new DecimalFormat("#,000.00");
		
		System.out.println(decimalFormat.format(1789.45));
		
	}

Da uma olhada na documentação do DecimalFormat para ver como formatar de outras formas. Talvez a galera tenha outra alternativa. Abraço!

F

Opa dssimao, blzera kraaaa !!!

Vixi, foi em cima do q eu precisava, ficou muiiito bom

Resolvido, mais uma vez obrigado.

E

Isso deveria ser feito no próprio table model. O método “getColumnClass” retorna para a JTable o tipo que cada coluna recebe. Especificando como “Double”, a própria JTable se encarrega de formatar o número de acordo com o default locale, chegando ao resultado que deseja sem precisar fazer a formatação na mão.

Criado 27 de dezembro de 2010
Ultima resposta 27 de dez. de 2010
Respostas 3
Participantes 3