如何在c#中格式化1700到1’700和1000000到1’000’000?
我喜欢格式化数学中的所有数字。 是否有预定义的函数或者是否可以使用子字符串和替换?
编辑:我的文化是de-ch
最好的祝福
试试这个
int input = Convert.ToInt32("1700"); string result = String.Format("{0:##,##}", input);
或这个
Console.WriteLine(1700.ToString("##,##", new NumberFormatInfo() { NumberGroupSeparator = "'" }));
var numformat = new NumberFormatInfo { NumberGroupSeparator = "'", NumberGroupSizes = new int[] { 3 }, NumberDecimalSeparator = "." }; Console.WriteLine(1000000.ToString("N",numformat));
试试这个:
Console.WriteLine(1000000.ToString("#,##0").Replace( CultureInfo.CurrentCulture.NumberFormat.NumberGroupSeparator, "'"));
要么
NumberFormatInfo likeInMath = new NumberFormatInfo() { NumberGroupSeparator = "'" }; Console.WriteLine(1000000.ToString("#,##0", likeInMath));
使用int.ToString()和iFormatProvider 。
另外看看这里的msdn。
我总是使用这种格式
"#,##0;#,##0'-';0"
所以你可以使用它
int input = Convert.ToInt32("100000000"); string result = String.Format("{#,##0;#,##0'-';0}", input);