java – 如何解析这个格式的Joda时间

我将 JSON格式的YYYY-mm-DD HH:MM:SS的DateString转换为使用代码保存到POJO
DateTimeFormatter format = DateTimeFormat.forPattern("yyyy-MM-dd HH:mm:ss");
this.startDate = format.parseDateTime(startDate);

当我将POJO转换回JSON时,日期写成如2013-07-12T18:31:01.000Z.
我们如何解析时间字符串2013-07-12T18:31:01.000Z回JodaDateTime对象.什么是格式化
我使用YYYY-mm-DD HH:MM:SS,它没有工作

解决方法

2013-07-12T18:31:01.000Z它是标准的ISO日期格式.
您可以使用标准的Joda日期时间格式化程序 ISODateTimeFormat::dateTime()
例:
String startDate = "2013-07-12T18:31:01.000Z";
  DateTime dt = ISODateTimeFormat.dateTime().parseDateTime(startDate);

在这种情况下,日期将转换为您所在时区的日期.
如果你想在格式化程序中忽略你的时区使用UTC区域:

String startDate = "2013-07-12T18:31:01.000Z";
  DateTime dt = ISODateTimeFormat.dateTime().withZone(DateTimeZone.UTC).parseDateTime(startDate);

相关文章

应用场景 C端用户提交工单、工单创建完成之后、会发布一条工...
线程类,设置有一个公共资源 package cn.org.chris.concurre...
Java中的数字(带有0前缀和字符串)
在Java 9中使用JLink的目的是什么?
Java Stream API Filter(过滤器)
在Java中找到正数和负数数组元素的数量