Foxtable(狐表)用户栏目专家坐堂 → 小数位数的问题?


  共有22823人关注过本帖树形打印复制链接

主题:小数位数的问题?

帅哥哟,离线,有人找我吗?
cpayinyuan
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
小数位数的问题?  发帖心情 Post By:2009/3/13 15:23:00 [显示全部帖子]

记得以前有人提过这个问题,但在论坛上搜索不到了,只好再提!
在表中某列A列,数据类型是double,我定义一个全局变量a1(Double型)等于表中某行的A列。在表中这个值的小数位数是0,但在窗口的输入框中中显示a1的时候,显示了很长的小数位数。不知怎么回事?
例如:在表中的值为49,但在窗口中显示为:49.000000000000007
  
图片点击可在新窗口打开查看此主题相关图片如下:好长的小数.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
cpayinyuan
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/3/13 15:38:00 [显示全部帖子]

以下是引用狐狸爸爸在2009-3-13 15:28:00的发言:
你的数据是导入的吧?

在命令窗口执行:

For Each dr As DataRow in CurrentTable.DataTable.DataRows
   if dr.Isnull("某列") = False Then
     dr("某列") = Math.Round(dr("某列"),2)
   End If
Next

执行完保存一下。

试了,没有用!


 回到顶部
帅哥哟,离线,有人找我吗?
cpayinyuan
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/3/13 15:40:00 [显示全部帖子]

最气人的是,参与计算的时候,计算的时候也会无缘无故的出现小数误差!例如,把它增加1,则变为:50.000……7,气死人了!

估计是系统有问题!

[此贴子已经被作者于2009-3-13 15:41:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cpayinyuan
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/3/13 15:58:00 [显示全部帖子]

 
我发现好像不是表的问题。好像是变量的问题。

是这样,在窗口中若直接显示表的值,不出现小数。

但是,我定义一个double型的全局变量,让它等于表中的该列的值,显示出来就成那样子了。

所以,我感觉不是数据转换的问题。好像系统本身有问题。把表的列改成整数列也不行。

但是很奇怪,不是所有的数字都出现问题,是偶尔。

[此贴子已经被作者于2009-3-13 15:58:04编辑过]

 回到顶部