我想要一个字符串格式来格式化我的数字:
Input: 1000 Ouput: 1 000.00
Input: 10000 Output: 10 000.00
Input: 100000 Output: 100 000.00
答案 0 :(得分:4)
完全按照您的工作需要,不需要额外的格式化
String.Format("{0:# ###.00}", 40000);
output - "40 000.00"
String.Format("{0:# ###.00}", 400000);
output - "400 000.00"
String.Format("{0:# ###.00}", 4000);
output - "4 000.00"
检查Blogpost:Format Number To Display
答案 1 :(得分:2)
这将有效
String.Format("{0:### ### ### ###.##}", 10000.00)
<强>结果:强>
" 10 000.00"
您需要修剪结果以删除多余的空格
答案 2 :(得分:1)
您可以使用NumberFormatInfo
课程执行此操作。看一下示例代码。
NumberFormatInfo numberFormatInfo = (NumberFormatInfo)CultureInfo.InvariantCulture.NumberFormat.Clone();
numberFormatInfo.NumberGroupSeparator = " ";
int a = 1000;
Console.WriteLine(a.ToString("n", numberFormatInfo)); // 1 000.00
答案 3 :(得分:0)
在这里你去找朋友:
var formatInfo = new NumberFormatInfo();
formatInfo.CurrencyGroupSeparator = " ";
formatInfo.CurrencySymbol = string.Empty;
Console.WriteLine(1000.ToString("C", formatInfo));
Console.WriteLine(10000.ToString("C", formatInfo));
Console.WriteLine(100000.ToString("C", formatInfo));
答案 4 :(得分:-1)
提供输入是您可以使用的整数。
input.ToString("F");
编辑:我的不好,没有看到格式中的空格,认为它只是小数值
另一种快速方式,可能不是最好的方法,是将其转换为货币字符串并删除前面的货币符号,并将“,”替换为“。”
e.g。
input.ToString( "C" );
input.Replace( "," , "." );
input.Remove( 0, 1 ); //or the amount of characters in currency symbol if more than one