Отображение валюты в C#

Я должен отобразить значения данных в американском формате валюты. Значение 190.8 должно отобразиться как 190,80$. По некоторым причинам я не могу выяснить, как сделать это. Совет?

13
задан user279521 18 June 2010 в 12:19
поделиться

5 ответов

Вы можете явно указать культуру США следующим образом:

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

C указывает формат валюты по умолчанию для указанной культуры в этот случай именно то, что вам нужно. Если вам нужен символ валюты США в континентальном европейском числовом формате (запятая вместо точки), то ваша работа, конечно, будет сложнее ...

15
ответ дан 1 December 2019 в 23:47
поделиться

Строки стандартного числового формата

   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
1
ответ дан 1 December 2019 в 23:47
поделиться
String.Format("${0:n2}", 190.8m);
0
ответ дан 1 December 2019 в 23:47
поделиться
string usCurrency = (190.8m).ToString("c", CultureInfo.GetCultureInfo("en-US"));
0
ответ дан 1 December 2019 в 23:47
поделиться
 decimal d = 190.8M;
 string displayData = d.ToString("c");

Если ваша CurrentCulture уже является американской, нет необходимости явно указывать ее.

1
ответ дан 1 December 2019 в 23:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: