我想将存储为字符串
的日期转换为UTC
。
String date = "Fri Aug 19 22:30:00 IST 2019"
(我从 Cassandra 获取)。
如何将其转换为这种格式? “2019-08-19T17:00:00+00:00”
最佳答案
通常,以下代码适用于转换并打印 2019-04-01T11:05:30Z[GMT]
val formatter = DateTimeFormatter.ofPattern("E, d MMM yyyy HH:mm:ss z")
val dateTime = ZonedDateTime.parse("Mon, 1 Apr 2019 11:05:30 GMT", formatter)
println(dateTime)
如果区域 IST
是预定义的,您还可以在字符串中进行一些操作并删除该区域,并按如下操作,这也会打印 2019-08-19T17 :00Z[GMT]
val str = "Mon Aug 19 22:30:00 2019"
val formatter = DateTimeFormatter.ofPattern("EEE MMM dd HH:mm:ss yyyy")
val dateTime = LocalDateTime.parse(str, formatter)
val zdtAtAsia = dateTime.atZone(ZoneId.of("Asia/Kolkata"))
val zdtAtGmt = zdtAtAsia.withZoneSameInstant(ZoneId.of("GMT"))
(示例是在 kotlin 中。但它使用与 java 相同的库)
关于java - 将日期字符串转换为 UTC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59049241/