Output in a table format in Java's System.out

Chris picture Chris · Apr 30, 2010 · Viewed 248.3k times · Source

I'm getting results from a database and want to output the data as a table in Java's standard output

I've tried using \t but the first column I want is very variable in length.

Is there a way to display this in a nice table like output?

Answer

Michael Myers picture Michael Myers · Apr 30, 2010

Use System.out.format . You can set lengths of fields like this:

System.out.format("%32s%10d%16s", string1, int1, string2);

This pads string1, int1, and string2 to 32, 10, and 16 characters, respectively.

See the Javadocs for java.util.Formatter for more information on the syntax (System.out.format uses a Formatter internally).