我有类似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,这可能不是您想要的结果。