我正在格式化变量。我尝试添加0
填充,但我收到 运行时问题 。
当我删除左对齐标志" - "我可以添加填充,但它就像我无法添加两者一样。
以下是代码:
int i4 = 1000;
System.out.printf("Format with position and spacing and left justify and locale separator and 0 padding");
System.out.printf("%1$-,7d \n", i4); //Runs fine
System.out.printf("%1$-,07d \n", i4); //Run time error
修改
在运行时我得到:IllegalFormatFlagsException
:
Exception in thread "main" java.util.IllegalFormatFlagsException: Flags = '-0,'
有什么建议吗?
答案 0 :(得分:1)
我不相信这是可能的。这两个概念不能合作。
如果你想以更大的格式宽度左对齐,你可以分两步完成......
System.out.printf("Result=\"%-12s\"\n", String.format("%,07d", i4));
输出
Result="001,000 "