java - Java中如何从月份字符串中获取月份数?

标签 java android jodatime

我有这个字符串

23/Gennaio/2014

我需要另一个字符串

23/01/2014

我尝试使用 joda.time:

DateTimeFormatter format =  DateTimeFormat.forPattern("dd/MMM/yyyy").withLocale(Locale.ITALY);
DateTime instance = format.parseDateTime("23/Gennaio/2014");  
String month_number = String.valueOf(instance.getMonthOfYear());

但是我得到了这个异常:

01-06 13:31:55.341: E/AndroidRuntime(1116): java.lang.IllegalArgumentException: Invalid format: "23/Gennaio/2014"

我错过了什么?

最佳答案

似乎需要小写的月份名称(不知道为什么):

DateTime instance = format.parseDateTime("23/Gennaio/2014".toLowerCase(Locale.ITALIAN));

应该工作得更好。

关于java - Java中如何从月份字符串中获取月份数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20951096/

相关文章:

java - StringTokenizer NoSuchElementException 错误

java - 在循环中声明多个java数组

java - 如何正确运行后台服务?

java - 将项目从 JDeveloper 转换为 Netbeans

Java.util.HashMap —— 为什么 HashMap 扩展 AbstractMap 并实现 Map?

android - 使用 if 语句使 EditText 不可编辑

javascript - 如何从 Android 代码设置 Javascript-HTML 变量

java - 在时间选择器中限制时间范围

java - 将 joda-time 秒转换为格式化的时间字符串

java - 如何使用 JodaTime 获取特定月份的最后日期?