Foxtable(狐表)用户栏目专家坐堂 → 请教,如何判断文本框内容符合日期格式输入?


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

主题:请教,如何判断文本框内容符合日期格式输入?

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


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
请教,如何判断文本框内容符合日期格式输入?  发帖心情 Post By:2012/5/9 10:29:00 [只看该作者]

文本框格式一定要符合日期格式规范输入(yyyy-MM-dd)如:2012-01-01

否则提示输入格式有误呢?

如果月份超出12也报错,当月无此日期也报错。这个如何实现?谢谢指点!


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


加好友 发短信
等级:小狐 帖子:302 积分:1860 威望:0 精华:0 注册:2012/4/27 11:34:00
  发帖心情 Post By:2012/5/9 10:36:00 [只看该作者]

带判断的转换

显然任何类型的数据,都可以转换为字符型。
但是对于其它类型的数据,却有转换失败的可能,例如:

Dim s As String = "abc"
Dim
v As Long = 123
Return
CLng(s) +
v

如果在命令窗口执行上面的代码,会出现错误提示:字符串"abc"无法转换为长整数。
为了解决这个问题,我们可以采用另一种转换方法。

除了String(字符)类型外,所有的基本数据类型,都有一个TryParse方法,用于将其它类型的数据转换为本类型的数据。

语法

Type.TryParse(Value,Variant)

说明

Type:   目标数据类型,例如Date、Integer、Long、Double等等。
Value:  要进行转换的数据。
V
ariant: 用于存放转换结果的变量,变量的类型必须和Type指定的类型一致。

如果转换成功,则将转换结果存储在变量Variant中,并返回True,否则返回False。

例如:

Dim s As string = "123.1"
Dim
d As Double
Double
.TryParse(s, d) '将变量s的内容转换为数值,并存放在变量d中
Output.Show(d +
100)
'输出结果是223.1

再例如:

Dim d As Date '变量d用于存储转换结果
If
Date.TryParse("1999/12/31", d) Then '如果转换成功
    Output.Show(d)
'输出转换结果
Else

    Output.Show(
"无效日期格式") '给出错误提示
End
If


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


加好友 发短信
等级:狐精 帖子:3313 积分:23134 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2012/5/9 10:38:00 [只看该作者]

找到答案了。

 回到顶部