3

在 SimpleDateFormat 中使用什么正确格式来解析如下所示的传入日期:“2013-01-17T00:00:00-06:00”?

4

5 回答 5

3

这种格式应该有效:

"yyyy-MM-dd'T'HH:mm:ssXXX"
于 2013-01-29T18:56:38.537 回答
2

您必须修剪最后一个冒号以与 .java 的区域信息格式对齐"-0600"

试试这个:

String str = "2013-01-17T00:00:00-06:00";
new SimpleDataFormat("yyyy-MM-dd'T'hh:mm:ssZ").parse(str.replaceAll(":(..)$", "$1"));
于 2013-01-29T18:55:13.960 回答
1

格式就像yyyy-MM-dd'T'HH:mm:ssX

于 2013-01-29T18:57:25.267 回答
0

yyyy-MM-dd'T'HH:mm:ssz

请参阅此链接:http ://www.w3.org/TR/NOTE-datetime

于 2013-01-29T19:01:46.743 回答
0

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ"); System.out.println(sdf.format(new GregorianCalendar().getTime()));

这还不够吗?

于 2013-01-29T19:29:28.763 回答