gpt4 book ai didi

date - 如何从初始 LocalDateTime 和 cron 表达式获取下一个 LocalDateTime?

转载 作者:行者123 更新时间:2023-12-04 01:45:12 31 4
gpt4 key购买 nike

我有一个初始日期和一个 cron 表达式。我怎样才能找到满足此 cron 表达式的下一个日期?。

    String cronExpresion = "* * * * * *"
LocalDateTime initial = LocalDateTime.now()
LocalDateTime next = ?

我尝试了 CronSequenceGenerator 及其 next() 方法,但它使用 java.util.Date,我不希望将 LocalDateTime 转换为 Date,反之亦然。另外,我从几次运行的 cron 中得到了不同的结果(两个日期之间的时间),比如“每 10 秒”...

有什么想法吗?库?

最佳答案

Omnicron ( https://github.com/intelie/omnicron ) 似乎至少可以满足您的一些要求:

Cron cron = new Cron("*/5 * * * *");
ZonedDateTime date = ZonedDateTime.now();

System.out.println("Next execution: " + cron.next(date));
System.out.println("Prev execution: " + cron.prev(date));

(Cron::next 和 Cron::prev 接受任何时间值,而不仅仅是 ZonedDateTime。)

除此之外,作为奖励,Omnicron 与 Spring 的 CronSequenceGenerator (https://github.com/intelie/omnicron/blob/master/src/test/java/net/intelie/omnicron/SpringCompatibilityTest.java) 兼容

关于date - 如何从初始 LocalDateTime 和 cron 表达式获取下一个 LocalDateTime?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44109740/

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