我有一个来自数据库的字符串。例如它是5.1。我想用double.tryparse()方法将此字符串转换为double。我希望结果是5.1,但事实并非如此。结果看起来像5.0999999999999996。我能做些什么才能达到5.1?
答案 0 :(得分:0)
而不是双倍,请执行:
decimal.TryParse(s, out myDecimal);
或
decimal d = Convert.ToDecimal(s);
因为decimal是浮点小数而不是浮点二进制。 这是一个很好的解释:Difference between double and decimal