java - 在Java中,我可以在打印时选择开始行/列的位置吗?

标签 java printing

例如,假设我想写入一个文本文件,并且我想将结果排列成列,如下所示:

Peanut Butter       Crunchy
Jelly               Purple
Bread               Wheat
Milk                Whole
当第一个单词的长度不同时,

\t 显然不会排列第二列。可以把它们排列起来吗?

最佳答案

是的,这是可能的。您想用空格将字符串填充到右侧。例如,如果您指定每列每 20 个字符开始,而您的字符串为 12 个字符,则需要在末尾添加 8 个空格字符。

您可以手动编写循环代码,也可以使用string.format()。我在网上查了一下,发现了这个简单的方法,你可以使用。 http://www.rgagnon.com/javadetails/java-0448.html

public static String padRight(String s, int n) {
    return String.format("%1$-" + n + "s", s);
}

s 是要填充的字符串,n 是理想长度。

例如,

padRight("test", 10") -> "test      "

要添加到代码中,只需格式化每一行即可。例如,对于第一行,您可以这样做

String line = padRight(peanutButterString, 20) + peanutButterAttribute

确保您的值位于数组中,并且您可以轻松地循环遍历它并创建格式正确的字符串。

关于java - 在Java中,我可以在打印时选择开始行/列的位置吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24309470/

相关文章:

在集群上运行 Flink table-api 程序时出现 java.lang.InknownClassChangeError 错误

java键值对,键查找为 "startswith"

java - 如何将单元格格式设置为文本

Java:从 BufferedImage 到 IplImage

Java打印问题

r - 如何抑制 RStudio 中的输出?

linux - 使用 GhostScript 转换为 CMYK 时,CMY channel 上显示黑色

java - 如何检测/读取服务中的 NFC 标签

java - 在 windows 中从 java 中取消打印机队列中的文档

printing - 使用 sed 在分隔符之间打印文本