在Java中用'+'将时间戳解析为Date或Instant [重复]。

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

我有时间戳的格式 2020-05-12 12:00:00+00 . 如何才能解析成Java.util.Date和Java.time.Instant.看似基本的问题,但我怀疑这是我还没有解决的问题的根源。

java jodatime
1个回答
1
投票

Java 8介绍 DateTimeFormatter. 这里是链接到 DateTimeFormatter文档.

例如

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ssx");
String tsFromDb = "2020-05-12 12:00:00+00";
Instant inst = formatter.parse(tsFromDb, Instant::from);
System.out.println(inst);

输出:

2020-05-12T12:00:00Z

如果你需要 java.util.Date:

Date oldfashionedDate = Date.from(inst);
System.out.println(oldfashionedDate);

在美国蒂华纳时区输出。

Tue May 12 05:00:00 PDT 2020

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