DateFormat 从 ''yyyy-MM-dd" 到 "dd-MM" 使用 Joda-Time
DateFormat from ''yyyy-MM-dd" to "dd-MM" using Joda-Time
我有以下代码:
DateTimeFormatter dtf = DateTimeFormat.forPattern("dd/MM");
LocalDate weekMon = new LocalDate().withWeekOfWeekyear(thisWeek).withDayOfWeek(DateTimeConstants.MONDAY);
System.out.println(weekMon.toString());
LocalDate weekFin = dtf.parseLocalDate(weekMon.toString());
并且输出正确打印日期:2015-02-02。我正在尝试将其转换为欧洲格式并忽略年份 "dd-MM" -> "02-02" 但行:
LocalDate weekFin = dtf.parseLocalDate(weekMon.toString());
不断抛出以下异常:
java.lang.IllegalArgumentException: Invalid format: "2015-02-02" is malformed at "5-02-02"
这种情况下的阵型有什么问题?。
可能您需要的是print
,而不是parse
。
换句话说:
String dateStr = dtf.print(weekMon);
注意 使用此代码:
LocalDate weekFin = dtf.parseLocalDate(weekMon.toString());
您正在尝试使用接受 "dd/MM"
格式的字符串的格式化程序来解析 "yyyy-MM-dd"
格式的字符串。因此例外...
我有以下代码:
DateTimeFormatter dtf = DateTimeFormat.forPattern("dd/MM");
LocalDate weekMon = new LocalDate().withWeekOfWeekyear(thisWeek).withDayOfWeek(DateTimeConstants.MONDAY);
System.out.println(weekMon.toString());
LocalDate weekFin = dtf.parseLocalDate(weekMon.toString());
并且输出正确打印日期:2015-02-02。我正在尝试将其转换为欧洲格式并忽略年份 "dd-MM" -> "02-02" 但行:
LocalDate weekFin = dtf.parseLocalDate(weekMon.toString());
不断抛出以下异常:
java.lang.IllegalArgumentException: Invalid format: "2015-02-02" is malformed at "5-02-02"
这种情况下的阵型有什么问题?。
可能您需要的是print
,而不是parse
。
换句话说:
String dateStr = dtf.print(weekMon);
注意 使用此代码:
LocalDate weekFin = dtf.parseLocalDate(weekMon.toString());
您正在尝试使用接受 "dd/MM"
格式的字符串的格式化程序来解析 "yyyy-MM-dd"
格式的字符串。因此例外...