Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 强制使用C中的两位小数#_C# - Fatal编程技术网

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,良好的呼叫-应答更新。谢谢