2009-12-07 58 views
1

有谁知道如何从.NET NumberFormatInfo类获取数字(或货币)格式字符串(如“###,###,## 0.00)?我的研究迄今说它应该是从的NumberFormatInfo类手动构造,但是这听起来很奇怪,我认为微软(或其他人)没有写为目的东西,到目前为止NumberFormatInfo格式字符串

回答

3

试试这个:

var number = System.Globalization.CultureInfo.CurrentCulture.NumberFormat; 
string format = 
    String.Format("{0}{1}{2}", 
     String.Join(
      number.NumberGroupSeparator, 
      number.NumberGroupSizes.Select(group => new String('#', group))), 
     number.NumberDecimalSeparator, 
     new String('0', number.NumberDecimalDigits)); 
+0

感谢鲁本斯,好的代码看起来好像没有别的办法,只能手动完成这个工作,就像你在这段代码中做的那样, – 2009-12-07 19:13:50

+0

是啊;它闻起来不好,但听起来不错。 – 2009-12-07 19:16:30