gpt4 book ai didi

delphi - 如何检查 TDateTime 内容是否有效

转载 作者:行者123 更新时间:2023-12-03 03:13:14 26 4
gpt4 key购买 nike

有没有办法检查Delphi是否TDateTime变量具有有效内容而不会捕获转换异常?

我编写了一个应用程序,必须解析数百个以原始 Delphi 记录形式编写的大文件,其中包含 TDateTime field 。有时我会得到一条记录,其中内容有 TDateTime值如 2.0927117954e+262给出 Floating point invalid Operation传递给转换例程时出现异常。我知道我可以简单地捕获异常,但这在调试时非常麻烦,因为调试器不断停止,并且我希望在出现其他错误时保持启用状态。

最佳答案

您的示例值显然超出了有效的日期时间范围。您可以在执行任何转换之前测试它是否在范围内。

var
d: TDateTime;
..

d := 2.0927117954e+262;
if (d <= MaxDateTime) and (d >= MinDateTime) then
s := DateTimeToStr(d)
else
..

关于delphi - 如何检查 TDateTime 内容是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11747813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com