我正在使用以下代码将我的 itemValue 作为货币返回。
Return String.Format("{0:C}", itemValue)
但这将返回一个格式化为美元的字符串 - 有没有办法将其格式化以返回英镑?
谢了,兄弟们
我正在使用以下代码将我的 itemValue 作为货币返回。
Return String.Format("{0:C}", itemValue)
但这将返回一个格式化为美元的字符串 - 有没有办法将其格式化以返回英镑?
谢了,兄弟们
按照@Steve 的建议更改 CurrentCulture,或者像这样使用它:
Return itemValue.ToString("C", System.Globalization.CultureInfo.GetCultureInfo("en-gb"))
在要求格式之前更改线程的 CurrentCulture
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-GB")
字符串格式化程序从您机器的当前文化中获取货币和数字格式。您可以:
在格式中明确设置文化:
Return String.Format(System.Globalization.CultureInfo.GetCultureInfo("en-GB"), "{0:C}", itemValue)
有更简单的方法。由于 float、double、decimal 等类型在整个 ToString() 方法中都有自己的格式。例如:
double itemValue = 102.35;
Console.WriteLine(itemValue.ToString("C", new CultureInfo("en-GB")));