Java Formatter指定文本的起始位置

时间:2010-06-07 21:48:01

标签: java printf formatter

我正在尝试将字符串放在一行的某个起始位置,而不管前一个文本的结束位置。例如:

Mandatory arguments to long options are mandatory for short options too.
  -a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..

无论前面的文字如何,选项的解释都从第30位开始。你如何用java.util.Formatter实现这一目标?我已经使用宽度(%30s)和精度(%.30)参数进行了测试,但都没有提供所需的结果。

1 个答案:

答案 0 :(得分:2)

您可以使用'width'参数,如下所示:

    System.out.println(String.format("%-30s%s", "  -a, --all", "do not ignore entries starting with ."));
    System.out.println(String.format("%-30s%s", "  -A, --almost-all", "do not list implied . and .."));

修改
如果您有兴趣,请完整概述。它根本不大,格式化功能非常有限 http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html#syntax