Avatar ·

如何在C#中输出保留两位小数的decimal?

大家好!我是一名C#初学者,遇到了decimal数字格式化的问题。我需要以保留两位小数的格式输出商品价格,例如:12.50、99.99、145.00。

问题是,当我直接使用Console.WriteLine或ToString()时,得到的小数位数不一致。这是我的代码:

decimal price = 12.5m;
decimal tax = 0.12345m;
decimal total = 150m;

Console.WriteLine(price);   // 输出:12,5
Console.WriteLine(tax);     // 输出:0,12345
Console.WriteLine(total);   // 输出:150

我尝试了不同的方法,但效果不理想。例如,我写了:

Console.WriteLine(price.ToString("0.00")); // 输出:12,50 - 这个正常
Console.WriteLine(total.ToString("0.00")); // 输出:150,00 - 这个也不错

但当我尝试在字符串中使用格式化时,分隔符出现了混乱。俄罗斯使用逗号,而我需要点