0

日付の表示に問題があります。私はすべてうまくやっています、日付は示しています...悪いそれは正しくありません!

2012/08/30 のはずが 2012/07/30 になっています。

携帯電話で日付を確認しましたが、正しいです。何か考えはありますか?

ありがとうございました!!

コードの一部:

 Calendar c = Calendar.getInstance();
 String sDate = c.get(Calendar.DAY_OF_MONTH) + "/" + c.get(Calendar.MONTH) + "/" +  c.get(Calendar.YEAR);

 view2.setText("" + et.getText()  + sDate );
4

3 に答える 3

1

Calendar オブジェクトが期待どおりに機能しません。get(Calendar.MONTH) は、月の番号ではなく、日付の月を表す定数を返します。この微妙な違いは、次の場所で見ることができます: java.util.calendar

ご覧のとおり、定数は 1 月から始まるゼロベースのシーケンスを反映しているため、定数を月ベースのルックアップ用の配列へのインデクサーとして使用できます。

あなたの目的のために、返された int に 1 を追加することで解決できますが、java.text のSimpleDateFormatを見たいと思うかもしれません。この記事では、作業を開始するための簡単な概要を説明します。

幸運を!

于 2012-08-30T20:56:53.903 に答える
1

なぜ使わないのですかDateFormat

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");
view2.setText(dateFormat.format(c.getTime());
于 2012-08-30T20:47:20.643 に答える
0

代わりにこれを使用できます。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
String currentDateandTime = sdf.format(new Date())
于 2012-08-30T20:50:02.467 に答える