C# 强制使用C中的两位小数#
我有这个问题,找不到解决办法。 这非常简单,我不知道为什么我找不到解决方案 问题:C# 强制使用C中的两位小数#,c#,C#,我有这个问题,找不到解决办法。 这非常简单,我不知道为什么我找不到解决方案 问题: 如果一个值返回例如“16.60”,在c#中,我将读“16.6”,但我也需要0,因为paypal API,wich只接受没有十进制数的值,或者如果它必须有十进制数,则最小值和最大值必须是2 那我怎么做呢 我试过这个: string value_f = "16,6"; decimal value_f_d = decimal.Parse(value_f); value
- 如果一个值返回例如“16.60”,在c#中,我将读“16.6”,但我也需要0,因为paypal API,wich只接受没有十进制数的值,或者如果它必须有十进制数,则最小值和最大值必须是2
string value_f = "16,6";
decimal value_f_d = decimal.Parse(value_f);
value_f_d = (decimal)Math.Round(value_f_d, 2);
value_f = value_f_d.ToString("#.##");
value_f = value_f.Replace(',', '.');
我想要这个输出:16.60,但给出了:16.6
string output = value_f_d.ToString("#.00", CultureInfo.InvariantCulture);
(
using System.Globalization
在顶部的using声明中)您是否阅读了采用格式字符串的ToString
重载的文档?它告诉你什么是代码>< <代码>?另外,考虑使用不变文化来格式化你的数字。这样就避免了更换十进制分隔符的必要性。例如,var output=value_f_d.ToString(“#0.00”,System.Globalization.CultureInfo.InvariantCulture)
@dbc,良好的呼叫-应答更新。谢谢