date类型的转换(50分)

  • 主题发起人 主题发起人 chenghus
  • 开始时间 开始时间
C

chenghus

Unregistered / Unconfirmed
GUEST, unregistred user!
var
date1: string;
date2: tdate;
begin
date1='sdfdsfd';
date2=strtodate(date1);
end;
如何判断date1是有效的日期格式。以让第二句不出错。
 
var
IsDateTime:boolean;
date1: string;
date2: tdate;
begin
IsDateTime:=True;
date1='sdfdsfd';
try
date2=strtodate(date1);
except
IsDateTime:=False;
end;
if IsDateTime then ShowMessage(date1+' is valid datetime');
end;
 
有没有直接判断的函数,而不用错误拦截。
 
同意前卫兄的回答.
 
不要给我分.

function isDate(val: string): Boolean;
begin
Result:=True;
try
strtoData(val);
except
result:=False;
end;
end;
 
function isDate(val: string): Boolean;
begin
Result:=True;
try
strtoData(val);
except
on econverterror do
begin
showmessage('it is not a datetype data');
result:=False;
end;
end;
end;
 
》liuchuanbo
哈哈,showmessage放早了

应该这样吧:
if isDate then ....
else showmessage('it is not a datetype data');
 
>> Kang
You are wrong
 
isDate(string1) then ...
else Showmessage(string1+'is not a valid date.Abort!');
isDate(string2) then ...
else Showmessage(string2+'is not a valid date.');

如果函数里有Showmessage,那么我就只能显示固定格式的信息了
 
现在研究方法
也是本问题的主题
况且except在此相当于else的效果
 
直接控制输入的格式不好么?
太多的except 不好吧
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
后退
顶部