【问题标题】:String.Format in C#C# 中的字符串格式
【发布时间】:2013-05-17 14:33:52
【问题描述】:

我有这样的价值观

1,000
25,000
500,000

需要将上面的值转换为如下不带逗号的值

1000
25000
500000

如何在 C# 中实现这一点?

如何获得这个的反向输出 -

string.Format("{0:n}", 999999)

【问题讨论】:

  • 你从哪里得到这些值?它们是字符串还是整数格式?

标签: c# string.format


【解决方案1】:

你可以像这样使用字符串类的Replace函数:

string str = "25,000";
str = str.Replace(",", "");

编辑:

正如来自 cmets 的 Matthew Watson 所建议的那样

如果字符串是从 string.Format("{0:n}", 999999) 返回的 使用“。”的语言环境中的机器。作为千位分隔符,这 会失败

更新答案:

string num = "25,000";
NumberFormatInfo currentInfo = CultureInfo.CurrentCulture.NumberFormat;
num = num.Replace(currentInfo.NumberGroupSeparator, ""); 

【讨论】:

  • 1+ 用于简单的解决方案,但你如何做到这一点
  • 从问题的最后一行来看,OP 似乎已经有一个数字数据类型的数字
  • @Habib 他问题的最后一行表明他想要 string.Format 函数的反向输出。他有字符串中的数字。
  • @GianAcuna,你是对的,因为 OP 已经接受了答案:) +1
  • @StephenL 请注意,如果从string.Format("{0:n}", 999999) 返回的字符串在使用"." 作为千位分隔符的机器上运行,则会失败。应该真正使用NumberFormatInfo.NumberGroupSeparator 作为当前语言环境,而不是硬编码","
猜你喜欢
  • 2015-05-08
  • 1970-01-01
  • 1970-01-01
  • 2014-11-02
  • 2020-03-10
  • 2013-07-09
  • 2021-05-09
  • 2016-10-05
  • 1970-01-01
相关资源
最近更新 更多