我希望能够以美国和欧洲风格格式化一个数字(双精度型)。根据用户的选择,数字 123123123.456 应格式化为:
- 123,123,123.456 // 美式格式
- 123.123.123,456 // 欧洲格式
另一个要求是能够设置小数位数。我相信我可以使用double.ToString(string format, IFormatProvider provider)
和 put "F2"
as theformat
但是 msdn 似乎并没有说明太多关IFormatProvider
于解释我可以自己实现它的信息。
double x = 123123123.456
IFormatProvider myFormatProvider = whatToDo ?
x.ToString("F2", myFormatProvider); // I need 2 decimal digits hence F2
是否有任何预制编号的 IFormatProvider 对象可以用于该目的?或者也许还有其他解决方案,我走错路了?