【发布时间】:2012-12-05 12:40:01
【问题描述】:
我想在 Java 中解析以下日期,
2012-11-29T09:15:00.002-08:00
我必须使用哪种日期格式来解析它?
【问题讨论】:
我想在 Java 中解析以下日期,
2012-11-29T09:15:00.002-08:00
我必须使用哪种日期格式来解析它?
【问题讨论】:
【讨论】:
其实这种格式是XSD日期格式,最简单的解析方式(不使用任何外部库)就是在javax.xml.bind package中使用DataTypeConverter.parseDateTime(String lexicalXSDDateTime)。这将返回一个java.util.Calendar 对象,您可以使用Calendar.getTime() 检索Date。
另外,在 SO 上有一些解决方案可以说明相同的格式,例如:在 Java 中解析 XML dateTime 的最佳方法是什么? enter link description here.
我希望这会有所帮助。
使用日期格式为"yyyy-MM-dd'T'HH:mm:ss.SSSz"
例如:
String string = "2012-11-29T09:15:00.002-08:00";
Date date = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssSSSz", Locale.ENGLISH).parse(string);
System.out.println(date);
【讨论】: