2011-07-06 10 views
3

この質問は以下のコードによって発生しますDateFormatはどのようにJavaの正確な日付を解析できますか(.NETのDateTime.ParseExactなど)?

DateFormat DF = new SimpleDateFormat("yyyyMMdd"); 
String dateString = "20110133"; 
System.out.println(DF.parse(dateString)); 
// Wed Feb 02 00:00:00 CET 2011 

2月02 に月33変換parse方法dateStringは、実際の日付を表していない場合は、例外をスローする方法はありますか?

.NETのDateTime.ParseExactと似ています。

答えて

8

は有効ではありません日付で(すなわち受け入れ、その後の変換)あなたは寛大ではないことを伝えるためにDateFormatクラスのsetLenient(boolean)メソッドを使用することができ、この

DF.setLenient(false); 

javadoc reference

+0

クール。 しかし、私がインスタンス全体に対して設定しなければならないのは残念です。まあ... – Zeemee

4

をやってみ。

+0

申し訳ありませんが、Bala Rが最初です:)。 – Zeemee

関連する問題