Estou obtendo resultados de um banco de dados e desejo gerar os dados como uma tabela na saída padrão do Java
Tentei usar \ t, mas a primeira coluna que desejo é muito variável em comprimento.
Existe uma maneira de exibir isso em uma boa tabela como saída?
java
string-formatting
tabular
Chris
fonte
fonte
Respostas:
Use
System.out.format
. Você pode definir comprimentos de campos como este:Este almofadas
string1
,int1
estring2
a 32, 10, e 16 caracteres, respectivamente.Consulte os Javadocs para
java.util.Formatter
obter mais informações sobre a sintaxe (System.out.format
usa umFormatter
internamente).fonte
%n
- é traduzido automaticamente para o terminador de linha padrão do sistema.Usando j-text-utils, você pode imprimir para consolar uma tabela como:
E é tão simples como:
A API também permite classificar e numerar as linhas ...
fonte
Eu criei um projeto que pode construir visualizações de tabela muito avançadas. Se você deveria imprimir a tabela, a largura da tabela terá um limite. Eu apliquei em um de meus próprios projetos para obter a impressão da fatura do cliente. A seguir está um exemplo da visualização de impressão.
Este é o código para visualização de impressão acima e você pode encontrar a biblioteca (Wagu) aqui .
fonte
Posso chegar muito tarde para a resposta, mas aqui está uma solução simples e genérica
Com este tipo de saída
fonte
Veja isso. O autor fornece uma solução simples, mas elegante, que não requer nenhuma biblioteca de terceiros. http://www.ksmpartners.com/2013/08/nicely-formatted-tabular-output-in-java/
fonte
Como a maioria das soluções está um pouco desatualizada, eu também poderia sugerir asciitable, que já está disponível no maven (
de.vandermeer:asciitable:0.3.2
) e pode produzir configurações muito complicadas.Recursos (por fora do local):
E o uso ainda parece fácil:
fonte
a diferença nos tamanhos de entrada não afeta a saída
fonte
Confira a classe java.util.Formatter .
fonte