0

我的字符串看起来像 0145655789,我想将其格式更改为 0145.655.789

这是我试过的代码:

enterpriseCode 和 aNum 都是 StringBuilder 对象

enterpriseCode.Append(String.Format("{0:####.###.###}", aNum.ToString()).Replace(";", ""));

enterpriseCode 仍然包含 0145655789 而不是 0145.655.789

4

2 回答 2

12

那是因为您提供的格式字符串用于数字参数,而不是字符串。如果参数是字符串,它将被简单地忽略。

您可以将参数作为数字传递,并使用类似

{0:0000'.'000'.'000}

作为格式字符串。快速 PowerShell 测试:

PS> "{0:0000'.'000'.'000}" -f 145655789
0145.655.789
于 2013-11-13T14:37:31.200 回答
2

这将起作用

string formatted = enterpriseCode.Insert(4, ".").Insert(8, ".");
于 2013-11-13T14:42:53.930 回答