0

日付の存在を確認したいのですが、int 変数 ( format を表す) - 日 ( dd )、月 ( MM )、年 ( YY ) があります。これが私のコードです:

    SimpleDateFormat df = new SimpleDateFormat("YYMMdd");
    df.setLenient(false);

    try {
        Date d = df.parse(""+day+month+year);
    } ...

変数は int にあるため、たとえば日が 01 ( int の 1 桁) または 21 ( int の 2 桁) の場合に問題が発生し、フォーマットに「dd」があるためエラーが発生します。日付の有効性を確認するために自分の番号を使用する簡単な方法はありますか?

4

2 に答える 2

3

日、月、年が数値形式の場合は、日付を直接作成する方が簡単です。

Calendar cal = Calendar.getInstance();
cal.clear(); //to set the time to 00:00:00.0000 if that is an issue
cal.set(year, month, day);
Date dt = cal.getTime();
于 2013-06-12T19:09:04.393 に答える
1

次のように数値文字列をパディングできます。

String paddedDay = String.format("%02d", day);
于 2013-06-12T19:04:02.927 に答える