特定字符下的字符串格式

时间:2018-11-17 02:44:05

标签: java

我正在制作教科书索引器,并且正在格式化输出文件。在单词和它的频率之间存在句点。

所需的文本文件输出:

word..............25:
word...............3:
word...............2:

我正在尝试使行与:对齐,但是如果数字多于1位,则不能在分号下显示。

有人对所需输出的Java字符串格式有任何想法吗?

供参考的最大单词为23个字符,其频率为1。

1 个答案:

答案 0 :(得分:-1)

由于在注释中,OP尝试使用String.format(),因此可以考虑以下方法。与其尝试使数字与“%23d”正确对齐,不如将单词和计数分别对齐。

String.format("%-23s%2d:", getWord(), count);

%-23dgetWord()格式化为23个空格,并左对齐,然后%2d将右对齐“ count”。

示例输出:

Hello...................9:
Goodbye................42:
whatever...............17:

请注意,为了快速起见,我仅使用与OP相同的.replace()方法。

See this attempt here at ideone.com