java - 如何比较Java中的两个utc时间戳?

标签 java timestamp utc

我正在使用以下方法生成 UTC 时间戳,并想将其与另一个进行比较。为此,我正在使用 Apache Commons Lang 库。

如何比较两个时间戳并确定哪个时间戳更大?

String msgPushedTimestamp = 2016-05-11T19:50:17.141Z
String logFileTimestamp = 2016-05-11T14:52:02.970Z

这就是我使用 Apache Commons Lang 库生成时间戳的方式。

String msgPushedTimestamp = FastDateFormat.getInstance("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", TimeZone.getTimeZone("UTC")).format(System.currentTimeMillis());

最佳答案

您可以将它们作为字符串进行比较,因为您的日期格式 ( ISO 8601) 在字典顺序上是可比较的。

int compare = msgPushedTimestamp.compareTo(logFileTimestamp);
if (compare < 0) {
    // msgPushedTimestamp is earlier
} else if (compare > 0) {
    // logFileTimestamp is earlier
} else {
    // they are equal
}

关于java - 如何比较Java中的两个utc时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37172133/

相关文章:

java - 如何使用 Java SimpleDateFormat 正确格式化异常日期字符串?

c++ - 从 C++ 中的时间戳中提取日期时间戳

android - 如何将这种格式的 SQL 时间戳 "1394039043000"转换为字符串

javascript - Moment() 格式函数增加了额外的分钟数

android - 时间转换毫秒本地时间到毫秒UTC时间在android

java - Jhipster实体子生成器: How to create liquibase DELTA changelogs?

java - Java 上的 HTML 身份验证不起作用

java - 使用多个 ManyToOne 连接进行查询

file - Powershell-修改文件的日期和时间以反射(reflect)其文件名

asp.net - 在 asp.net 应用程序上显示存储在 sql 数据库中的 utc 时间的本地时间