gpt4 book ai didi

java - 时间变化会影响 Java 日期比较功能吗?

转载 作者:行者123 更新时间:2023-11-29 05:26:16 26 4
gpt4 key购买 nike

我们正在尝试使用 java 日期比较将存储在 mySQL 中的日期与从 Gmail 邮件的原始文本中读取的纯文本日期字段进行比较。

第一次通过时,Gmail 消息纯文本日期被读取并存储在 mySQL 数据库字段“date_sent”类型 TIMESTAMP 中。下次检查该消息时,它会获取消息纯文本日期,并使用 Java 日期比较函数将其与存储的 date_sent 值进行比较。

这种比较通常有效。但是,如果要比较的消息 Date 的日期和时间是在时间更改的一天凌晨 1 点(标准夏令时),则比较失败。

有人遇到过吗?你是如何修复它的?

最佳答案

看来您正在进行一场艰苦的战斗。如果一条消息在夏令时结束的日期凌晨 1:30 到达,我认为您无法判断它是第一次出现在凌晨 1:30(时钟倒转之前)还是第二次。

据推测,您永远不会收到夏令时开始当天凌晨 1:30 的消息,因为这个时间实际上并不存在。

因此,如果您通过将文本字段转换为日期并存储它来执行此操作,您将始终遇到如何比较此类日期的问题。如果您选择错误的凌晨 1:30,您的比较有时可能是错误的,如果您希望夏令时和标准时间的时区正确,我认为您无能为力。

您可能会考虑做的一件事是将时间戳存储为文本,而不是日期,这样转换就永远不会发生。如果您使用类似 yyyy-MM-dd HH:mm:ss 的格式,那么您应该能够进行文本比较而不是日期比较,并获得正确的结果。

关于java - 时间变化会影响 Java 日期比较功能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19916614/

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