以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [原创]find查找明明存在却找不到 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=114546) |
||||
-- 作者:找到没重的名 -- 发布时间:2018/2/8 23:09:00 -- [原创]find查找明明存在却找不到 Dim dr As DataRow = DataTables("特比综合排名辅助").find("特比各关分速和=2462.3829") If dr IsNot Nothing Then output.show("找到了") Else output.show("找不到") End If 在窗口设计中,在查到这个值时,就是提示查不到。重建项目,复制数据,运行此段代码就可以找到,但在我正在编程的这个项目里就提示找不到。我把项目中其他表、窗口、事件全都删除了。重启电脑重进项目,也是照旧。 我是想到论坛上求助,可好怕是又是回复一句“我这儿运行没问题啊”。我也能理解守在 希望能解决,希望能解决,希望能解决…… |
||||
-- 作者:有点甜 -- 发布时间:2018/2/8 23:13:00 -- 你把那一列,改成【高精度小数】即可。 |
||||
-- 作者:找到没重的名 -- 发布时间:2018/2/9 21:31:00 -- 问题解决了,谢谢老师!求助前我也特意看了帮助1不等于1那一节,但觉得“毋需过分担心这种误差,这种误差只有10的负16次方左右,对日常计算的结果不会有任何影响,但是会影响数值比较的结果”,觉得双精度已够高,而且不存在四舍五入,应该不会这么巧中“500万”吧!所以更愿意通过提问的方式,得到一个正面的回复。 好吧,狐爸你又赢了!害我郁闷了整整一个晚上和整整一个白天。一整晚+一整白天<>24小时,因为我都怀疑人生了 但是,老师,我怎么才能知道我用高精度呢,因为在此项目中,有效数字是不会超过10位的,虽然小数点后有4位,但不存在四舍五入,而double有效数字是15位。此前编写此项目过程中,也测试过多组数据,偏巧这一次出现了这种找不到的情形,所以才非常崩溃。如果发布之后再出现,岂不更崩溃! 再次谢谢老师!春节快乐!希望这是我春节期间的最后一问?(不过春节期间我的大部分时间还会是在码代码过程中度过。) |
||||
-- 作者:有点蓝 -- 发布时间:2018/2/9 21:57:00 -- 基本上小数比较有问题的都可以考虑是否精度的问题了 |