Java-将字符串中给定的DateTime转换为本地时区

问题描述 投票:0回答:1

我正在从数据库中读取时间戳记作为字符串值,说:

2020-04-30T09:59:00.272-05:00

。现在我必须将其与本地时区(系统时区)中的当前时间戳进行比较。

到目前为止我尝试过的:

ZonedDateTime result = ZonedDateTime.parse("2020-04-30T09:59:00.272-05:00"); System.out.println("Given : "+result); System.out.println("Given In Local: "+result.withZoneSameLocal(ZoneId.systemDefault()));

输出: Given : 2020-04-30T09:59:00.272-05:00 Given In Local: 2020-04-30T09:59:00.272-05:00[America/Chicago]

我期望的输出是“ 2020-04-30T14:59:00.272”

我正在从数据库读取时间戳记作为字符串值,例如:2020-04-30T09:59:00.272-05:00。现在我必须将其与本地时区(系统时区)中的当前时间戳进行比较...

java datetime timestamp-with-timezone
1个回答
0
投票

您可以将给定的日期字符串解析为OffsetDateTime,然后按如下所示更改其偏移量并将其转换为LocalDateTime

© www.soinside.com 2019 - 2024. All rights reserved.