Float值从double转换后丢失数据
本文关键字:数据 转换 值从 double Float | 更新日期: 2023-09-27 18:16:47
我有一个双变量表示从1900年1月1日起从ntp服务器经过的秒数,它打印ok
3616290958.594
3616290959.611
3616290960.538
我试图将其转换为float在不同的方法,如System.Convert.ToSingle和常规casting,但我总是得到
3,616,291,000.00
我使用它的。tostring ("N")方法打印浮点数,如果它有影响
我甚至尝试将double类型转换为long类型,然后将long类型转换为float类型(点之后我不需要任何精度数据,我将在转换之前将double类型设置为floor)。
您可以简单地使用Math.Truncate
的例子:
Double d = 3616290958.594;
string k = Math.Truncate(d);