我有一堆信息要输出到文件,需要像桌子一样设置。例如,我需要在每列下面都有标题和信息的列。
我有四个项目一次打印,每个项目都需要自己的行。在下一个之前的%n。
我应该使用system.out.format吗?我应该使用PrintStream类将数据附加到文件吗?
我想坚持使用Java的基本实用程序和类。
我希望我的输出看起来像这样......
*Title1* *Title2* *Title3* *Title4* *Title5*
info1 info1 info1 info1 info1
info2 info2 info2 info2 info2
....3
感谢您的帮助!
答案 0 :(得分:8)
您可以使用以下代码:
Formatter fmt = new Formatter();
System.out.println(fmt.format("%s %s %s %s %s", "Title*", "Title*", "Title*", "Title*", "Title*"));
打印具有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包