Java以表格格式输出到文件?

时间:2011-09-18 23:08:39

标签: java file-io formatting

我有一堆信息要输出到文件,需要像桌子一样设置。例如,我需要在每列下面都有标题和信息的列。

我有四个项目一次打印,每个项目都需要自己的行。在下一个之前的%n。

我应该使用system.out.format吗?我应该使用PrintStream类将数据附加到文件吗?

我想坚持使用Java的基本实用程序和类。

我希望我的输出看起来像这样......

*Title1*  *Title2*  *Title3*  *Title4*  *Title5*
 info1     info1     info1     info1     info1
 info2     info2     info2     info2     info2
....3

感谢您的帮助!

1 个答案:

答案 0 :(得分:8)

您可以使用以下代码:

Formatter fmt = new Formatter(); 

System.out.println(fmt.format("%s %s %s %s %s", "Title*", "Title*", "Title*", "Title*", "Title*"));

请参阅Formatter java doc

打印具有20个字符列宽的表的示例代码:

    Formatter formatter = new Formatter();
    System.out.println(formatter.format("%20s %20s %20s %20s %20s", "Title*", "Title*", "Title*", "Title*", "Title*"));

    for (int i = 0; i < 10; i++) {
        formatter = new Formatter();
        String rowData = "info" + i;
        System.out.println(formatter.format("%20s %20s %20s %20s %20s", rowData, rowData, rowData, rowData, rowData));
    }

要将数据写入文件,您可以使用java.io