C# 解析后未显示组(千)分隔符的小数

C# 解析后未显示组(千)分隔符的小数,c#,decimal,globalization,cultureinfo,culture,C#,Decimal,Globalization,Cultureinfo,Culture,在控制台应用程序中,我创建了2个小数: 使用文字值 使用字符串解析 我已将我的文化设置为“en GB” 第一个writeline显示了预期的十进制表示,而第二个writeline打印的是-34555.897,但我预期的是-34555.897,我缺少分隔千位的逗号。为什么会这样?这就是问题所在: Console.WriteLine("Decimal value Converted: " + moneyConversion); //-34555.897 您使用的是moneyConversion(十

在控制台应用程序中,我创建了2个小数:

  • 使用文字值
  • 使用字符串解析
  • 我已将我的文化设置为“en GB”

    第一个writeline显示了预期的十进制表示,而第二个writeline打印的是-34555.897,但我预期的是-34555.897,我缺少分隔千位的逗号。为什么会这样?

    这就是问题所在:

    Console.WriteLine("Decimal value Converted: " + moneyConversion); //-34555.897
    
    您使用的是
    moneyConversion
    (十进制值),而不是
    moneyConversionString
    。如果将其更改为:

    Console.WriteLine("Decimal value Converted: " + moneyConversionString);
    
    您将获得所需的格式。否则,您只能有效地调用
    moneyConversion.ToString()
    ,它将使用默认的“G”格式



    您正在打印十进制的值(即
    moneyConversion
    ),而不是它的字符串表示形式(
    moneyConversionString
    )。

    一直在读取变量名,但没有意识到它们是。。。。天啊!!!在这上面浪费了这么多时间!!真丢脸。说真的,有时候我需要休息一下。
    Console.WriteLine("Decimal value Converted: " + moneyConversionString);