java - 日期格式给出无法解析的日期错误?

标签 java date date-format

如果我有一个字符串日期:

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/

相关文章:

java - FX TextField 禁用节点事件

javascript - 在服务器和客户端上渲染时应如何处理日期字符串?

java - 在 Velocity 文件中将日期格式化为葡萄牙语

javascript - 保加利亚语正则表达式(有效)日期格式 d.M.yyyy 'г.'

android - 如何根据本地设置格式化没有年份的Android日期并显示月份和日期?

r - 如何将不同日期格式的列转换为通用日期格式?

c# - 寻求澄清有关弱类型语言的明显矛盾

java - 如何使用 CassandraOperations 更新集合

java.lang.IllegalStateException : The driver is not executable:/resources/phantomjs-2. 1.1-linux-x86_64/bin/phantomjs

php - 如何将日期/时间从 24 小时格式转换为 12 小时 AM/PM?