需要一些String.format的帮助

Joh*_*nes 0 java string formatting

我正在尝试找到一个关于在java中格式化字符串的完整教程.

我需要创建一个收据,如下所示:

       HEADER IN MIDDLE
''''''''''''''''''''''''''''''
Item1                   Price
Item2 x 5               Price
Item3 that has a very
long name....           Price
''''''''''''''''''''''''''''''
Netprice:                 xxx
Grossprice:               xxx
VAT:                      xxx
Shipping cost:            xxx
Total:                    xxx
''''''''''''''''''''''''''''''
      FOOTER IN MIDDLE

Esp*_*spo 6

传递给string.format的格式如下:

http://java.sun.com/j2se/1.5.0/docs/api/java/util/Formatter.html#syntax

从页面:

通用,字符和数字类型的格式说明符具有以下语法:

   %[argument_index$][flags][width][.precision]conversion
Run Code Online (Sandbox Code Playgroud)

可选的argument_index是十进制整数,表示参数列表中参数的位置.第一个参数由"1 $"引用,第二个参数由"2 $"引用,等等.

可选标志是一组修改输出格式的字符.有效标志集取决于转换.

可选宽度是一个非负十进制整数,表示要写入输出的最小字符数.

可选精度是一个非负十进制整数,通常用于限制字符数.具体行为取决于转换.

所需的转换是一个字符,指示如何格式化参数.给定参数的有效转换集取决于参数的数据类型.