我有类似mm-dd-yyy
字符串格式的日期,我正在尝试将其转换为 Java 中的 Date 对象,我尝试了两种方法
- 发送返回错误日期的日期格式,
"mm-dd-yyy"
即使字符串中的月份不是“01”,它也总是返回月份 Jan - 发送日期格式
"MM-dd-yyy"
将按预期返回正确的日期。
但我想了解为什么第一种方法返回错误?任何人都可以告诉我原因。
我有类似mm-dd-yyy
字符串格式的日期,我正在尝试将其转换为 Java 中的 Date 对象,我尝试了两种方法
"mm-dd-yyy"
即使字符串中的月份不是“01”,它也总是返回月份 Jan"MM-dd-yyy"
将按预期返回正确的日期。但我想了解为什么第一种方法返回错误?任何人都可以告诉我原因。
查看格式
M Month in year
m Minute in hour
日期和时间格式由模式字符串指定。在模式字符串中,在 hourm
中被解释为minute ,在 year 中被解释为Month。M
也许您应该阅读JavaDoc API 规范。
您应该检查解析日期对象的年份是否是您想要的。由于您的字符串是MM-dd-yyy
, "02-12-014"
(实际上应该被2014-02-12
解释为0014-02-12
,这可能不是您想要的结果。