1

カレンダー API を使用して日付を操作しています。これが私が試しているコードのスニペットです。

Date date=new SimpleDateFormat("dd/mm/yyyy").parse("05/10/2013");
              Calendar cal=Calendar.getInstance();
              cal.setTime(date);
              int month=cal.get(Calendar.MONTH);

ここでは、月を 9(10 月) として取得する必要がありますが、0(1 月) が返されます。日付を変更しても、0(1 月) が返されます。なぜこれが起こっているのですか?私を助けてください。

4

2 に答える 2

2

smallMMの代わりにmm使用すると分がm与えられ、月を取得するには資本を使用しますM

Date date=new SimpleDateFormat("dd/MM/yyyy").parse("05/10/2013");
Calendar cal=Calendar.getInstance();
cal.setTime(date);
int month=cal.get(Calendar.MONTH);
System.out.println("" + month);

出力:

9

Java ドキュメント

ここに画像の説明を入力

于 2013-10-05T04:26:20.527 に答える
2

指定された日付形式のMM代わりに訴訟を起こします。java docに従って月を指定し、分を指定します。mmMm

    Date date=new SimpleDateFormat("dd/MM/yyyy").parse("05/10/2013")
    Calendar cal=Calendar.getInstance();
              cal.setTime(date);
              int month=cal.get(Calendar.MONTH); // add +1 for correct month(10) otherwise it will be 9
于 2013-10-05T04:33:57.977 に答える