我需要以美国货币格式显示数据值。含义190.8应显示为$ 190.80。出于某种原因,我无法弄清楚如何做到这一点。有什么建议吗?
答案 0 :(得分:15)
您可以明确指定美国文化:
string.Format(CultureInfo.GetCultureInfo("en-US"), "{0:C}", decimalValue)
C表示指定文化的默认货币格式,在这种情况下恰好是您所追求的。如果您希望美国货币符号采用欧洲大陆数字格式(逗号而非期间),那么您的工作当然会更难......
答案 1 :(得分:1)
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
答案 2 :(得分:1)
decimal d = 190.8M;
string displayData = d.ToString("c");
如果您的CurrentCulture
已经是美国,则无需明确提供。
答案 3 :(得分:0)
String.Format("${0:n2}", 190.8m);
答案 4 :(得分:0)
string usCurrency = (190.8m).ToString("c", CultureInfo.GetCultureInfo("en-US"));