3

有没有formatString这样的价值:

intValue.ToString(formatString) == String.Format("{0,9}", intValue)

对于不超过 100 万的所有正整数值?

特别是,输出必须是 9 个字符,并在开头用空格填充。

000000000会给我正确的长度,但用零填充。

至于为什么我不只是使用String.Format("{0,9}", intValue),我正在尝试创建一个配置文件,第三方程序将读取并使用它来创建输出文件,我无法更改该程序中的代码。我知道该程序是用 C# 编写的,从它使用的当前配置文件中可以明显看出ToString()

4

1 回答 1

3

你不能。

任何重载{0:xxx}都不支持复合格式字符串( ),但使用复合格式字符串的方法支持标准数字格式字符串。ToString

.NET Framework 复合格式化功能也支持标准数字格式字符串,Console 和 StreamWriter 类的某些 Write 和 WriteLine 方法、String.Format 方法和 StringBuilder.AppendFormat 方法使用该功能。

于 2013-04-02T19:37:41.820 回答