【问题标题】:Format Numeric Value with Leading Spaces使用前导空格格式化数值
【发布时间】:2012-07-19 18:18:51
【问题描述】:

我正在尝试使用前导空格格式化数值,以将字符串打包到给定长度,因此:-

mystring = mynumber.ToString ("format-string")

但是我没有找到正确的格式字符串。我已经看到问题here 并尝试了建议的答案,但它不起作用。对于 123.4,

.ToString ("####.#")        gets "123.4"
.ToString ("6:####.#")      gets "6:123.4"
.ToString ("0,6:####.#")    gets "06:0,123.4"
.ToString ("{####.#}")      gets "{123.4}"
.ToString ("{6:####.#}")    gets "{6:123.4}"
.ToString ("{0,6:####.#}")  gets "{06:0,123.4}"

有什么我可以尝试得到" 123.4"的吗?

【问题讨论】:

  • 你总是想要 1 个前导空格还是想要将字符串填充到一定长度?
  • @Jodrell,我希望将字符串填充到一定长度;抱歉,我没有说清楚。
  • 要明确的是,提问者似乎奇怪地不愿意陈述的“特定长度”是 6。

标签: vb.net


【解决方案1】:

你不能对那个格式使用ToString方法,你需要使用String.Format方法:

String.Format("{0,6:####.#}", number)

【讨论】:

  • 你确定这会有所作为吗?
  • @Jodrell:是的。 ",6" 部分不能与 ToString 一起使用,因为没有将其附加到的索引。 ToString 方法只使用格式字符串本身,即冒号后面的部分。
  • @Guffa,谢谢。我开始怀疑这种事情。
猜你喜欢
  • 2014-04-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多