c#如何在浮点数和十进制之间转换

本文关键字:十进制 之间 转换 浮点数 | 更新日期: 2023-09-27 18:17:16

我想使用NumberUpDownBox来获取和设置浮点值。我只知道这行不通:

DecimalConverter dec = new DecimalConverter();
((NumericUpDown)_control).Value = (Decimal)dec.ConvertFrom((float)value);

c#如何在浮点数和十进制之间转换

一种方法是:

float a = 2.3F;
decimal d = (decimal)a;

或者您可以使用decimal构造函数:

decimal d = new decimal(a);

Convert类具有用于在大多数基本类型之间进行转换的静态方法。

要从float转换为decimal,可以使用Convert.ToDecimal():

float f = 1.0f;
decimal d = Convert.ToDecimal(f);

你可以使用Convert.ToSingle():

decimal d = 1.0m;
float f = Convert.ToSingle(d);