1

Java を使用する場合、日付に関して次の問題があります。私はこのコードを持っています:

String dateF=anio_final+"-12-31";
System.out.println("La fecha final al principio:"+dateF);

java.util.Date f_final=null;
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-mm-dd");
f_final=formatter.parse(dateF);
System.out.println("Al final la fecha final es:"+f_final);

//=> anio_final is 2012, 

したがって、dateF を印刷すると 2012-12-31 が得られますが、SimpleDateFormat を実行して f_final 変数に配置すると、2012-01-31 が得られるのはなぜですか?

4

2 に答える 2

5

SimpleDateFormatから、月は で示されUppercase Mます。Lowercase m: minute-

new SimpleDateFormat("yyyy-mm-dd");

する必要があります: -

new SimpleDateFormat("yyyy-MM-dd");
于 2012-11-30T09:16:06.800 に答える
1

http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.htmlを参照してください。

あなたのパターンyyyy-mm-ddは次のとおりです:年 - 時間の分 - 月の日:-)に変更する必要があります

SimpleDateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd" );
于 2012-11-30T09:17:40.683 に答える