漂浮精度在float.Parse中丢失

kee*_*hee 1 .net c# floating-point parsing

float s = float.Parse("10499.9705314636");
Run Code Online (Sandbox Code Playgroud)

现在s有价值10499.97.

有没有办法保存所有精确数字?

joe*_*dev 6

您可能想要查看float,double和decimal之间的区别.请特别注意二进制浮点类型和十进制浮点类型之间的区别.十进制数据类型很可能是您在这里寻找的,因为float没有足够的有效数字来存储您要准确解析的数字.