/ /単一の日付形式の文字列を使用して2種類の日付を解析する方法はありますか? [複製] -java、解析、日付、形式

2つのタイプの日付を解析するために単一の日付書式文字列を使用する方法はありますか? [複製] - java、解析、日付、書式

私はJava1.6を使用しています。両方を解析できる日付形式のパターンを作成する方法はありますか?

2013-08-01

そして

2013-08-01T00:00:00.000Z

?私は以下を試しました

yyyy-MM-dd"T"HH:mm:ss.SSS"Z"

しかし、それは2番目にのみ一致し、最初のParseExceptionで終了します。私の解析コードは次のとおりです。

final DateFormat defaultDateFormatObj = new SimpleDateFormat(classDateFormat);
final java.util.Date startDate = defaultDateFormatObj.parse(myDateString);

ありがとう、 - Dave

回答:

回答№1は2

1つのDateFormatterで異なる形式を解析することはできないようです

ただし、それぞれに1つのDateFormatを定義し、「T」文字の存在または日付ソースの長さを確認して、使用するフォーマッターを決定することができます。

私は本当に解析できない日付を処理するためにtry / catchを残します


回答№2の場合は1

要するに、私はそうは思わない。2つの異なる日付形式(catchブロックの2番目)でtry / catchを使用することをお勧めします。

この質問への答えは役立つはずです:

SimpleDateFormatを使用して複数の形式で日付を解析する方法