2010-06-18 140 views
13

我需要顯示美國貨幣格式的數據值。含義190.8應顯示爲$ 190.80。出於某種原因,我不知道如何做到這一點。有什麼建議?在C中顯示貨幣#

回答

15

你可以明確指定了美國的文化,像這樣:

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

的C表示指定區域性的默認貨幣格式,這種情況正是你所追求的。如果你想與歐洲大陸的數字格式的美國貨幣符號(逗號而不是週期),那麼你的工作將是當然的困難......

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 
0
String.Format("${0:n2}", 190.8m); 
+0

-1表示貨幣值的數據類型錯誤。 – 2010-06-18 12:44:33

0
string usCurrency = (190.8m).ToString("c", CultureInfo.GetCultureInfo("en-US")); 
1
decimal d = 190.8M; 
string displayData = d.ToString("c"); 

如果CurrentCulture已經是美國還有的不需要明確提供它。