无法解析String to Date对象

时间:2016-08-08 11:26:14

标签: java android simpledateformat

我有这种格式的字符串:2016-08-08T10:27:06.282858+00:00

我想解析这个字符串以获取Date对象。 我试过了

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSS'Z'");

但我收到错误:Unparseable date: "2016-08-08T11:06:22+00:00" (at offset 19)

我尝试了其他所有格式代替' Z'作为' X',' XXX'但似乎没什么用。

3 个答案:

答案 0 :(得分:0)

正确的格式是" yyyy-MM-dd' HH:mm:ss.SSSSSSXXX"。 ' '用于转义符号并避免解析它们。

答案 1 :(得分:0)

模式结尾处的'Z'似乎是个问题。我删除它并解析工作:

@Test
public void testParsing() throws Exception {
    String text = "2016-08-08T10:27:06.282858+00:00";
    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSS");

    Date date = df.parse(text);
    System.out.println(date);
}

输出:

Mon Aug 08 10:31:48 CEST 2016

答案 2 :(得分:0)

@ Ran94你试图解析错误的日期,即 2016-08-08T11:06:22 + 00:00 ,似乎无效,正确的可能值应为{{1这可以用这种格式2016-08-08T11:06:22+0000表示。希望这有帮助