我想在全球范围内格式化货币。对于英文货币格式将显示为$ XXX,XXX.XX。 如果是法语,那么货币格式将显示为XXX.XXX,XX $。 如何在C#中使用文化和全球化设置货币格式?
下面是我设置日期格式的C#代码:
if (Thread.CurrentThread.CurrentCulture.Name.Equals("fr-CA") || Thread.CurrentThread.CurrentCulture.Name.Equals("en-CA"))
{
var currentCulture = Thread.CurrentThread.CurrentCulture;
var culture = (CultureInfo)currentCulture.Clone();
culture.DateTimeFormat.ShortDatePattern = "yyyy/MM/dd";
Thread.CurrentThread.CurrentCulture = culture;
}
答案 0 :(得分:2)
通过NumberFormatInfo
使用CultureInfo.NumberFormat
,并且有各种与货币相关的属性,包括CurrencyDecimalSeparator
和CurrencyPositivePattern
。
看起来你想要一个积极的模式1 - 你必须找出你想要的负面模式。
答案 1 :(得分:0)
查看这两个
样品:
double value = 12345.6789;
Console.WriteLine(value.ToString("C", CultureInfo.CurrentCulture));
答案 2 :(得分:0)
使用Windows.Globalization.NumberFormatting.CurrencyFormatter是格式化货币的首选方式。此类从Windows 8开始提供,可用于桌面或Windows应用商店应用程序。您可以指定要与显示的语言规则分开格式化的货币。