我知道对于这种格式“23-07-2014”的日期,我可以将格式化程序用作“dd-MM-yyyy”。
我可以使用什么作为此日期的格式化程序“2014-07-05T00:00:00.000-07:00”?
我正在使用DateTimeFormatter,并希望指定模式来解析上述日期。
谢谢!
答案 0 :(得分:0)
您的日期格式错误"dd-mm-yyyy"
。 IT应为"dd-MM-yyyy"
。 MM
用作月份,mm
用作分钟。
您可以使用"yyyy-MM-dd'T'HH:mm:ss.SSSXXX"
来解析2014-07-05T00:00:00.000-07:00
String str = "2014-07-05T00:00:00.000-07:00";
DateFormat df=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
System.out.println(df.parse(str));
输出:
Sat Jul 05 12:30:00 IST 2014
关注this。你下次会自己回答。
答案 1 :(得分:0)
那么,你能像人一样读它吗?你能确定哪个部分匹配什么?如果是这样,那么查看documentation并为自己解决这个问题是微不足道的。
例如,开头看起来像年,月,日(可能是年,日,月,我想,但让我们认为它是理智的)。文档指出年份由y
映射,您需要4个数字,因此您的格式以yyyy
开头。出于同样的原因,一年中的某个月为M
,而月中的某一天为d
,因此您的格式以yyyy-MM-dd
开头。
T
只是日期和时间之间的分隔符。然后你有一些看起来像小时,分钟,秒的东西 - 查看文档,HH:mm:ss
。
以下3个数字看起来像毫秒:`S'。
最后,作为偏移的时区:Z
。
把它放在一起:
yyyy-MM-dd'T'HH:mm:ss:.SSSZ
脱掉袖口,我没有尝试过,也没有仔细检查过,但它应该有效。或者至少,它应该通过阅读文档告诉你如何去做。