格式化货币
回答
平时要格式化数字作为一种货币,你应该使用 “C” 格式说明:
string formatted = price.ToString("c");
那将使用当前线程的默认文化来确定格式化规则,但是如果需要,您可以明确指定它。
如果没有帮助,请给我们更多的信息,并阅读这两个网页:
编辑:从您的评论,这听起来像你要么要指定一个明确的自定义数字格式字符串,或建立自己的NumberFormatInfo
对象(这只是在克隆现有属性后设置属性的问题)并将其传递给格式化调用。
Jon,在数字之前是否有可能没有€(在我的情况下)? – 2011-03-25 10:40:25
@ Kris-I:您可以尝试将货币符号更改为“”(对于自定义的NumericFormatInfo)。 – 2011-03-25 10:40:47
看看这个例子
double value = 12345.6789;
Console.WriteLine(value.ToString("C", CultureInfo.CurrentCulture));
Console.WriteLine(value.ToString("C3", CultureInfo.CurrentCulture));
Console.WriteLine(value.ToString("C3",
CultureInfo.CreateSpecificCulture("da-DK")));
// The example displays the following output on a system whose
// current culture is English (United States):
// $12,345.68
// $12,345.679
// kr 12.345,679
有关CurrencyDecimalSeparator和格式的更多信息,您可以查看NumberFormatInfo类http://msdn.microsoft.com/en-us/library/2xdwt6xx.aspx – Serghei 2011-03-25 08:09:37
您可以使用此:
125456.89.ToString("#,###.00")
它会自动使用正确的小数点和组分隔符当前区域性。它与迄今为止的其他解决方案不同之处在于它不会自动附加货币符号。
几乎不错,当我有12546,00我希望看到12.456 ,00当我使用它时我有12.456 – 2011-03-25 08:26:18
@ Kris-I:改变了我的答案,看看 – 2011-03-25 08:30:28
引用创建一个自定义的NumberFormatInfo实例,并调用toString()时传递英寸
NumberFormatInfo nfi = new NumberFormatInfo();
nfi.NumberGroupSeparator = ".";
nfi.NumberDecimalSeparator = ",";
double s = 219171;
string result = s.ToString("N2", nfi);
的NumberFormatInfo属于System.Globalization
- 1. 未格式化货币格式货币
- 2. 格式化货币
- 3. 格式化货币
- 4. Kendo UI货币格式化
- 5. 用C++格式化货币
- 6. 格式化AED货币
- 7. 格式化货币输出
- 8. SQL货币格式化
- 9. C#货币格式化(“C2”)
- 10. ASP.net ListBox货币格式化
- 11. 货币格式化语言?
- 12. 货币格式化MVC
- 13. SQL to_char货币格式化
- 14. 货币格式化问题
- 15. Rails货币格式化
- 16. 以特定格式格式化货币
- 17. 格式货币
- 18. 货币格式
- 19. 货币格式
- 20. 格式化Excel单元格(货币)
- 21. 印度货币的PHP货币格式?
- 22. C#格式十进制货币/货币
- 23. 如何将货币格式化为近似美元的货币?
- 24. 使用动态货币符号进行货币格式化
- 25. 将货币格式化为字符串时指定货币
- 26. Java的货币格式化:强制使用的货币符号
- 27. 将货币格式化为asp.net mvc c中的货币#
- 28. Sencha货币格式
- 29. 数/货币格式
- 30. 货币格式C++
什么文化,这是,什么是你输入的类型? – 2011-03-25 07:56:13
法国文化,但格式必须不取决于区域设置 – 2011-03-25 08:28:58