如何在.NET中找到float变量的实际值

时间:2016-04-04 09:49:07

标签: .net sql-server floating-point

我有一个DB表,其中一列是REAL类型。我需要在.NET环境中比较此列的值,但转换为REAL会使数字变得混乱。

例如,在数据库中保存 15.02 实际上会保存值 15.020000457763672 。 稍后从DB读取并尝试将15.02与从DB获得的值进行比较将产生意外结果。

由于向后兼容性,我坚持使用REAL数据类型,有没有办法在.NET代码中获取变量的“真实”值而不必逐位构造浮点数?

使用上面的例子,我怎样才能转换15.02 => 15.020000457763672在.NET代码中?

1 个答案:

答案 0 :(得分:0)

create the type as float and then convert it to double. float f = 15.02f; double d = Convert.ToDouble(f); f.ToString("r") = > "15.020000457763672"