C# 将字符串格式化为货币

C# 将字符串格式化为货币,c#,C#,我有字符串变量,其中包含price。例如,10000。我想用一个空格来分隔千位分隔符。 e、 g.将10000显示为10000,150000显示为150000 我该怎么做 试试这个 NumberFormatInfo info = (NumberFormatInfo)CultureInfo.InvariantCulture.NumberFormat.Clone(); info.NumberGroupSeparator = " "; Console.WriteLine(12

我有
字符串
变量,其中包含price。例如,
10000
。我想用一个空格来分隔千位分隔符。
e、 g.将
10000
显示为
10000
150000
显示为
150000

我该怎么做

试试这个

    NumberFormatInfo info = (NumberFormatInfo)CultureInfo.InvariantCulture.NumberFormat.Clone();
    info.NumberGroupSeparator = " ";

    Console.WriteLine(12345.ToString("n", info )); // 12 345.00
试试这个

    NumberFormatInfo info = (NumberFormatInfo)CultureInfo.InvariantCulture.NumberFormat.Clone();
    info.NumberGroupSeparator = " ";

    Console.WriteLine(12345.ToString("n", info )); // 12 345.00

使用linq手动转换:

var n = "10000000";
var s = n
    .Select((c, i) => c + ((n.Length - i - 1) % 3 == 0 ? " " : ""))
    .Aggregate((s2, s3) => s2 + s3);

使用linq手动转换:

var n = "10000000";
var s = n
    .Select((c, i) => c + ((n.Length - i - 1) % 3 == 0 ? " " : ""))
    .Aggregate((s2, s3) => s2 + s3);

将strin解析为int或decimal,使用通用解决方案处理数字。将strin解析为int或decimal,使用通用解决方案处理数字。