Foxtable(狐表)用户栏目专家坐堂 → [求助]如何判断在文本框中输入的数据类型?


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

主题:[求助]如何判断在文本框中输入的数据类型?

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


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
[求助]如何判断在文本框中输入的数据类型?  发帖心情 Post By:2013/8/16 11:05:00 [只看该作者]

如题,对文本框中输入的数据进行检查,判断是否为整数。表中这样的判断可以用IsNumeric,但这好像也只能判断是否是数值型 ,但不能判断是整数还是小数

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/16 11:07:00 [只看该作者]

比较不严谨的办法可以先判断他是否数值,再判断是否包含小数点 "1.5".Contains(".")  即可知道是否是小数

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


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
[求助  发帖心情 Post By:2013/8/16 11:11:00 [只看该作者]

以下是引用Bin在2013-8-16 11:07:00的发言:
比较不严谨的办法可以先判断他是否数值,再判断是否包含小数点 "1.5".Contains(".")  即可知道是否是小数这个
谢谢

[此贴子已经被作者于2013-8-16 11:16:39编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/16 11:17:00 [只看该作者]

你好,是没有对应的函数判断的.  而且就2种可能性,不是字符串就是数值 使用IsNumeric判断一下不是数值 自然就是字符串了.还有必要更多的判断吗?

刚才想了一下.我2楼提供的方法还是严谨可行的,因为如果有 两个小数点的话 IsNumeric 就会判断为FLASE了. 所以能过得了IsNumeric这一关就一定是数值. 再包含小数点就一定是小数了.



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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/8/16 11:26:00 [只看该作者]

Dim s As String = e.Form.ConTrols("TextBox1").Text

If IsNumeric(s) Then

   If CInt(s) = CDbl(s) Then

      MessageBox.Show("整数")

   Else

      MessageBox.Show("小数")

   End If

End If


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


加好友 发短信
等级:二尾狐 帖子:574 积分:4332 威望:0 精华:0 注册:2013/7/26 10:24:00
[求助]  发帖心情 Post By:2013/8/19 7:35:00 [只看该作者]

以下是引用lsy在2013-8-16 11:26:00的发言:

Dim s As String = e.Form.ConTrols("TextBox1").Text

If IsNumeric(s) Then

   If CInt(s) = CDbl(s) Then

      MessageBox.Show("整数")

   Else

      MessageBox.Show("小数")

   End If

End If

这个也挺有创意的。谢谢热心帮助!

[此贴子已经被作者于2013-8-19 7:36:14编辑过]

 回到顶部