Rexx:递增当前时间值

Rexx: increment current time value

嗨,我是 运行 ZOC 终端上的 REXX 脚本,我想像这样显示当前时间和预计到达时间:

开始时间22:44:24
结束时间 22:56:24

但我不知道如何增加当前时间???

也许将时间转换为秒,然后增加它,然后将以秒为单位的时间转换回 hh:mm:ss ??

我试过这种方法,但不知道如何将时间从秒转换回

intTime= TIME('S')+900

say="start time " TIME()
say="end time " intTime

一种方法是:-

intTime = TIME('S') + 900
hours = (intTime % 3600) // 24
minutes = (intTime // 3600) % 60
seconds = intTime // 60
endtime =  RIGHT(hours,2,'0') || ":" || RIGHT(minutes,2,'0') || ":" || RIGHT(seconds,2,'0')

注意!! 我没有权限测试这个,而且我已经很多年没有写过 Rexx 或有权限了。但是,我认为基本过程是可行的。即:-

1) 从 time 中提取 hours 作为整数( 迎合潜在的跨越第二天或几天// 24()).

2) 从 time 中提取 minutes 作为整数,在 dropping/subtracting 小时之后(余数时间除以小时,即 intTime // 3600).

3) 从 time 中提取整数 seconds。通过获取剩余的潜水时间减去60(会下降小时和分钟)。

4) 将结束字符串构建为小时、分钟和秒的串联。用 : 作为两个值之间的分隔符(或围绕中间值)。 right 函数包含前导零。

您也可以尝试:-

intTime = TIME('S',TIME('S')+900,'S')

基于TIME,可能是Object Rexx。我也读过一些提到扩展 TIME/DATE 功能的内容。但是,这可能再次引用了 Object Rexx。虽然,提到了 Mike Colishaw 的名字。

我相信 Mike Colishaw 是 Rexx 编程语言的创造者。