来自java的日期格式问题

我从joynet cloud api服务器获取日期格式:

2012-11-20T10:26:04+00:00" 

但是,我不知道处理最后一段+00:00 ,我已经制作了除+00:00之外的格式

 SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); Date date = fmt.parse("2012-11-20T10:26:04"); 

谢谢@Abu

我重写它以删除“:”,

 SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ"); String input = "2012-11-20T10:25:58+00:00"; String s1 = input.split("T")[0]; String s2 = input.split("T")[1]; String sep = null; if (s2.contains("+")) { sep = "+"; } if (s2.contains("-")) { sep = "-"; } String s3 = s2.split("\\" + sep)[0]; String s4 = s2.split("\\" + sep)[1].replace(":", ""); String cleanDate = s1 + "T" + s3 + sep + s4; Date date = fmt.parse(cleanDate); System.out.println(date); 

如果您不使用java 7,请删除:在时区部分内

并使用这个:

SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ");

请参阅Java 6中的SimpleDateFormat的 javadoc

如果您使用的是Java 7,请直接使用:

SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX");

请参阅Java 7中的SimpleDateFormat的 javadoc