だから私はあなたのコードを取り、それを実行しました、そしてそれは私にとってうまくいきます...
問題は、LocalDate
を期待していることだと思います。 オブジェクトを元々解析した形式を維持するためのオブジェクト。これはLocalDate
の方法ではありません。 動作します。
LocalDate
は日付または期間の表現であり、形式ではありません。
LocalDate
toString
があります オブジェクトの値をダンプするために使用できるメソッド。これは、人間が読める形式の表現を提供するためにオブジェクトが使用する内部形式です。
日付をフォーマットするには、ある種のフォーマッターを使用する必要があります。これは、必要なパターンと日付値を取り、String
を返します。
たとえば、次のコード...
SimpleDateFormat sdf = new SimpleDateFormat(pattern);
String date = "16-Mar-05";
DateTimeFormatter dtf = DateTimeFormat.forPattern("dd-MMM-yy");
LocalDate localDate2 = dtf.parseLocalDate(date);
System.out.println(localDate2 + "/" + dtf.print(localDate2));
//second way
LocalDate localDate3 = LocalDate.parse(date, DateTimeFormat.forPattern("dd-MMM-yy"));
System.out.println(localDate3 + "/" + dtf.print(localDate3));
//third way
DateTimeFormatter FORMATTER = DateTimeFormat.forPattern("dd-MMM-yy");
DateTime dateTime = FORMATTER.parseDateTime(date);
LocalDate localDate4 = dateTime.toLocalDate();
System.out.println(localDate4 + "/" + FORMATTER.print(localDate4));
生産...
2005-03-16/16-Mar-05
2005-03-16/16-Mar-05
2005-03-16/16-Mar-05
これに腹を立てる前に、これがJavaのDate
同様に機能します。