java - 如何在android中获取特定格式的字符串

标签 java string-formatting

假设我想以某种特定格式打印“项目”及其“价格”

abc           2
asdf          4
qwer xyz      5

AND 2、4、5 必须在一列中。

为此我尝试了-

StringBuilder sb = new StringBuilder();

sb.append(String.format("%s%25s", "abc","2"));
sb.append(String.format("%s%25s", "asdf","4"));
sb.append(String.format("%s%25s", "qwer xyz","5"));

tv.setText(sb.toString());   //tv is a text view

但是输出是 -

abc             2
asdf             4
qwer xyz             5

我想要“abc”,在 25 个空格后我想要“5”,但它从 abc 算起 25 个空格,而不是从一开始就算

最佳答案

你弄错了顺序试试这个:

StringBuilder sb = new StringBuilder();

sb.append(String.format("%-25s%s", "abc","2"));
sb.append(String.format("%-25s%s", "asdf","4"));
sb.append(String.format("%-25s%s", "qwer xyz","5"));

tv.setText(sb.toString());   //tv is a text view

25 之前的减号表示反转文本的对齐方式。最后一步是使用等宽字体。您可以通过这一行实现:

tv.setTypeface(Typeface.MONOSPACE);

关于java - 如何在android中获取特定格式的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21548430/

相关文章:

python - 使用 python 的旧式字符串格式时,Django 无法处理 sql 中的 % 符号

mysql - 这种 SQL 字符串格式化方法对于代码注入(inject)是否完全安全?

java - 使用 Spring MVC 3.0 执行内联行编辑的最便捷方法

java - 无限图像滚动

java - SoundPool: "path"中的 "load(String path, int priority)"是什么

java - 将货币转换为 Double 时 String 类错误

WPF:使用 StringFormat={}{0:F2} 绑定(bind)文本框。不显示零

java - 简单的struts应用程序需要互联网才能运行吗?

java - DSpace,超过 1000 比特流的错误编辑项

Python:截断的日志记录级别名称(字符串格式)自定义