【问题标题】:Displaying currency in C#在 C# 中显示货币
【发布时间】:2011-03-05 09:52:56
【问题描述】:

我需要以美国货币格式显示数据值。这意味着 190.8 应显示为 $190.80。出于某种原因,我无法弄清楚如何做到这一点。有什么建议吗?

【问题讨论】:

    标签: c# asp.net .net-3.5 currency


    【解决方案1】:

    您可以像这样明确指定美国文化:

    string.Format(CultureInfo.GetCultureInfo("en-US"), "{0:C}", decimalValue)
    

    C 表示指定文化的默认货币格式,在这种情况下正是您所追求的。如果您想要使用欧洲大陆数字格式(逗号而不是句点)的美国货币符号,那么您的工作当然会更难......

    【讨论】:

      【解决方案2】:

      Standard Numeric Format Strings

         decimal moneyvalue = 1921.39m;
          string html = String.Format("Order Total: {0:C}", moneyvalue);
          Console.WriteLine(html);
      

      double value = 12345.6789;
      Console.WriteLine(value.ToString("C", CultureInfo.CurrentCulture));//CultureInfo.GetCultureInfo("en-US")
      // current culture is English (United States):
      //       $12,345.68
      

      【讨论】:

        【解决方案3】:
         decimal d = 190.8M;
         string displayData = d.ToString("c");
        

        如果您的 CurrentCulture 已经是美国,则无需明确提供。

        【讨论】:

          【解决方案4】:
          string usCurrency = (190.8m).ToString("c", CultureInfo.GetCultureInfo("en-US"));
          

          【讨论】:

            【解决方案5】:
            String.Format("${0:n2}", 190.8m);
            

            【讨论】:

              猜你喜欢
              • 2020-05-13
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-02-22
              • 1970-01-01
              相关资源
              最近更新 更多