字符串到本地日期java.time
如何将字符串转换为?LocalDate
我看过这样的例子:
LocalDate dt = new LocalDate("2005-11-12");
但我的字符串是这样的:
2005-nov-12
如何将字符串转换为?LocalDate
我看过这样的例子:
LocalDate dt = new LocalDate("2005-11-12");
但我的字符串是这样的:
2005-nov-12
从 Java 1.8 开始,您可以使用 java.time 类在没有额外库的情况下实现这一点。请参阅教程。
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MMM-dd");
formatter = formatter.withLocale( putAppropriateLocaleHere ); // Locale specifies human language for translating, and cultural norms for lowercase/uppercase and abbreviations and such. Example: Locale.US or Locale.CANADA_FRENCH
LocalDate date = LocalDate.parse("2005-nov-12", formatter);
语法几乎相同。
当您使用Joda Time时,您应该使用:DateTimeFormatter
final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MMM-dd");
final LocalDate dt = dtf.parseLocalDate(yourinput);
如果使用Java 8或更高版本,请参阅hertzi的答案