如何在Java中正确创建制表符分隔的文本文件

zig*_*ggy 4 java formatting text string-formatting

我正在尝试创建一个tab delimeted文本文件,以便输出显示为列,但由于某种原因,选项卡显示在不同的位置.这是由数据值不同的事实引起的.

这是我如何构建行和列

output.append("|\t" + column1 + "\t\t\t:\t" + column2 +"  \t\t\n");
Run Code Online (Sandbox Code Playgroud)

输出结果如下

|   activeSessions      : 0         
|   duplicates      : 0         
|   expiredSessions         : 0         
|   rejectedSessions        : 0         
|   sessionMaxAliveTime         : 0         
|   sessionCounter      : 0         
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,第一列上包含较长文本条目的值会导致第二列稍微移动一点,即使两列都由两个选项卡分隔.如何确保第二列位置在同一行?

谢谢

mar*_*cog 5

选项卡字符的宽度未定义,取决于您用于显示文本的内容.如果要对齐列,请改用空格.例如,您可以使用printf格式对齐空格%10s.


小智 3

请参阅如何在 Java 中填充字符串?对于一些填充代码并将列内容填充到任意长度。