質問

GregorianCalendar startDate = new GregorianCalendar(2009, Calendar.JANUARY, 1);
SimpleDateFormat sdf = new SimpleDateFormat("d/m/yyyy"); 
public void setStart()
{
    startDate.setLenient(false);
    System.out.println(sdf.format(startDate.getTime()));
}

このコードを実行すると、2009年1月0日になります。月を変えても同じことが言えます。何が問題なのか、どうすれば修正できますか?

役に立ちましたか?

解決

小文字の「m」は時間単位の分を表します。代わりに大文字の「M」を使用する必要があります。

SimpleDateFormat sdf = new SimpleDateFormat("d/M/yyyy"); 

SimpleDateFormat 詳細についてはJavaDoc。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top