如何使用制表器格式化输出以使表格看起来清晰



我正在从postgresql获得输出。我想让它变得漂亮和清晰。

例如:

 content    | tablename | columnname | rowctid 
------------+-----------+------------+---------
 blabla     | s3        | usename    | (0,11)
 public1    | s2        | relname    | (7,29)
 public 2   | w         | body       | (0,2)

如何使用制表机等?例如,我会从这个开始:

System.out.println(" content    | tablename | columnname | rowctid");
System.out.println("------------+-----------+------------+---------");
for (int i = 0, i<x, i++) {
System.out.println(con_var + "   |  " +tab_var + "   |  " +col_var + "   |  " +row_id);
}

但是我认为制表机不起作用。此外,如果一个单词比另一个单词长,则"|"将位于不同的位置。

尝试如下:

    System.out.println(String.format("%30s", "content    |") 
            + String.format("%30s", "tablename |") 
            + String.format("%30s", "columnname |")
            + String.format("%30s", "rowctid |"));
    System.out.println(String.format("%30s", "+").replaceAll(" ", "-") 
            + String.format("%30s", "+").replaceAll(" ", "-")
            + String.format("%30s", "+").replaceAll(" ", "-") 
            + String.format("%30s", "+").replaceAll(" ", "-"));
    for (int i = 0, i<x, i++) {
        System.out.println(String.format("%30s", con_var + "   |  ") 
                +  String.format("%30s", tab_var + "   |  ") 
                +  String.format("%30s", col_var + "   |  ") 
                +  String.format("%30s", row_id + "   |  "));
    }

在此示例中,30 是列大小。根据需要进行更改。

相关内容