-5

我想用Java解析以下日期,

2012-11-29T09:15:00.002-08:00

我必须使用哪种日期格式来解析它?

4

2 回答 2

4

java.text.SimpleDateFormat会解析它。

于 2012-12-05T12:41:41.833 回答
3

实际上,这种格式是一种 XSD 日期格式,解析它的最简单方法(不使用任何外部库)是DataTypeConverter.parseDateTime(String lexicalXSDDateTime)javax.xml.bind package. 这将返回一个java.util.Calendar对象,您可以检索一个Dateusing Calendar.getTime()

或者,在 SO 上有一些解决方案涉及相同的格式,例如:在 Java 中解析 XML dateTime 的最佳方法是什么? 在此处输入链接描述

我希望这有帮助。

使用日期格式作为"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);

于 2012-12-05T12:42:03.800 回答