如果我有一个字符串日期:
2013-11-14T00:00:00.000
我可以使用什么日期格式来创建带有偏移量的日期?
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z");
dateFormat.setTimeZone(TimeZone.getDefault());
Date date = dateFormat.parse(myDate);
上面给出了无法解析的日期错误。
最佳答案
"yyyy-MM-dd'T'HH:mm:ss.SSS"
使用 SSS
表示毫秒,并删除 Z
,因为日期字符串没有时区。
如果您打算以其他格式打印/记录日期(例如,使用自定义时区),则必须使用 DateFormat
的另一个实例:
"yyyy-MM-dd'T'HH:mm:ss.SSS" // to parse the date string
"yyyy-MM-dd'T'HH:mm:ss.SSSZ" // to format the date object
关于java - 日期格式给出无法解析的日期错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19989564/