如何使用ThreeTen库(我不能使用java 8)解析以下格式的字符串:
2014年8月15日
迫使它成为ZonedDateTime
意味着2014年8月15日在UTC时区午夜?
答案 0 :(得分:2)
我认为你的意思是2014年而不是2010年。如果是这样,那么下面的代码可以帮助你:
LocalDate date =
LocalDate.parse(
"15 Aug 2014",
DateTimeFormatter.ofPattern("dd MMM uuuu", Locale.ENGLISH));
ZonedDateTime zdt = date.atStartOfDay(ZoneOffset.UTC);
System.out.print(zdt);
// output: 2014-08-15T00:00Z
另一种更笨重的方法是使用方法parseDefaulting()使用专门的DateTimeFormatterBuilder
来减少时间和偏移(未测试)。