Java JodaTime dd MMM yyyy模式异常

Java JodaTime dd MMM yyyy模式异常,java,formatting,jodatime,Java,Formatting,Jodatime,我有以下代码 DateTimeFormatter formatter = DateTimeFormat.forPattern("dd-MMM-yyyy").withLocale(Locale.US); formatter.parseDateTime("10-23-2012"); 为什么我会遇到以下异常 nested exception is java.lang.IllegalArgumentException: Invalid format: "10-23-2012" i

我有以下代码

    DateTimeFormatter formatter = DateTimeFormat.forPattern("dd-MMM-yyyy").withLocale(Locale.US);       
formatter.parseDateTime("10-23-2012");
为什么我会遇到以下异常

nested exception is java.lang.IllegalArgumentException: Invalid format: "10-23-2012" is malformed at "23-2012"

在阅读了javadoc之后,我仍然能够理解这一点。小写的d(月日)应该表示最小位数,但根据例外情况,它会被截断吗?有什么想法吗?

dd-MMM-yyyy
中有三个月字符,但在
10-23-2012
中只有两个月字符


情况变得更糟了。你的中间数字似乎是一天,而不是一个月;无论如何,你可能想要像“OCT”这样的东西。

试试
dd-MM-yyyy
。注意只有两个M。此外,要分析
10-23-2012
,格式应为
MM dd yyy

示例

MMM=二月、七月等

MM=02、07等


谢谢您的参考。我还运行了代码,并得到了原始格式的异常。MM dd yyy正是我所需要的。非常感谢。