C# 字符串格式分隔符 12-3456789-0

标签 c# string-formatting

我有一个下面的字符串。

1234567890

我想得到那个字符串。

12-3456789-0

我尝试使用下面的代码。

string.Format("{0:0-#######-#}", "1234567890");

但结果不是我想要的。

1234567890

Fiddle

最佳答案

您的代码不起作用的原因是您为字符串指定了数字格式。

看:

string.Format("{0:0-#######-#}", "1234567890"); // "1234567890" is a string

试试这个:

string.Format("{0:0-#######-#}", 1234567890); // 1234567890 is a number

顺便说一句,要获得您真正想要的输出,您的格式字符串需要是 {0:0#-#######-#}

关于C# 字符串格式分隔符 12-3456789-0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39202937/

相关文章:

c# - 如何使用C#将新的Counter属性添加到xml节点

c# - 如何将小时、分钟和秒从字符串解析为 TimeSpan 对象?

java - 如何用一个空行替换多个空格和换行符

c# - WCF 休息方法 - 该网页不可用

c# - 等待 IAsyncAction 时应该使用 ConfigureAwait(false) 吗?

c++ - 如何在 C++ 中优雅地格式化字符串,使其四舍五入到小数点后 6 位,并修剪掉额外的 '0' 或 '9'

python - 为什么 "{}".format(1241.123124) 不同于 "{:g}".format(1241.123124)

c# 文本框数据与日期格式绑定(bind)

c# - 如何让 Swagger 插件在自托管服务堆栈中工作

c# - 将 SQL 查询转换为 C#