C#如何在浮点数和小数之间进行转换?
C# How to convert between Float and Decimal?
我想使用 NumberUpDownBox 来获取和设置浮点值。
我所知道的是这不起作用:
DecimalConverter dec = new DecimalConverter();
((NumericUpDown)_control).Value = (Decimal)dec.ConvertFrom((float)value);
我找不到关于如何执行此操作的文档...
一种方法是直接投射:
float a = 2.3F;
decimal d = (decimal)a;
或者您可以使用 decimal
构造函数:
decimal d = new decimal(a);
Convert
class 具有用于在大多数原始类型之间进行转换的静态方法。
要从 float
转换为 decimal
,您可以使用 Convert.ToDecimal()
:
float f = 1.0f;
decimal d = Convert.ToDecimal(f);
要走另一条路,你可以使用 Convert.ToSingle()
:
decimal d = 1.0m;
float f = Convert.ToSingle(d);
我想使用 NumberUpDownBox 来获取和设置浮点值。 我所知道的是这不起作用:
DecimalConverter dec = new DecimalConverter();
((NumericUpDown)_control).Value = (Decimal)dec.ConvertFrom((float)value);
我找不到关于如何执行此操作的文档...
一种方法是直接投射:
float a = 2.3F;
decimal d = (decimal)a;
或者您可以使用 decimal
构造函数:
decimal d = new decimal(a);
Convert
class 具有用于在大多数原始类型之间进行转换的静态方法。
要从 float
转换为 decimal
,您可以使用 Convert.ToDecimal()
:
float f = 1.0f;
decimal d = Convert.ToDecimal(f);
要走另一条路,你可以使用 Convert.ToSingle()
:
decimal d = 1.0m;
float f = Convert.ToSingle(d);