0

Android アプリを作成し、現在の日付を画面に表示したいと考えています。私はこのコードを使用します:

Date date = new Date(0);
java.text.DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext());
text.setText("Time: " + dateFormat.format(date));`

しかし、このコードは日付「1.1.1970」を示していました。

現在の日付を表示するにはどうすればよいですか?

4

8 に答える 8

4

Date(0)最初の 1970 年 1 月です。 Date(long milliseconds) コンストラクターのドキュメントを参照してください。

public Date (長いミリ秒)

指定されたミリ秒値を使用して、この Date インスタンスを初期化します。値は、1970 年 1 月 1 日 GMT からのミリ秒数です。

現在の日付を取得するには、パラメーターなしDate()コンストラクターを使用します。

公開()

この Date インスタンスを現在の時刻に初期化します。

于 2012-08-07T05:53:09.720 に答える
2

使用する

text.setText(new SimpleDateFormat("yyyy-MM-dd").format( Calendar.getInstance().getTime());
于 2012-08-07T05:53:27.850 に答える
1
SimpleDateFormat dfDate  = new SimpleDateFormat("yyyy-MM-dd");   
Calendar c = Calendar.getInstance();
String date = dfDate.format(c.getTime());
System.out.println("Date is "+date);

結果は========>2012-08-07になります

于 2012-08-07T05:52:45.447 に答える
1

を削除するだけ0なので、これを次のように置き換えますDate date = new Date(0);Date date = new Date();

Androidのドキュメントに従って:

指定されたミリ秒値を使用して、この Date インスタンスを初期化します。値は、1970 年 1 月 1 日 GMT からのミリ秒数です。

値 0 を渡したので、上記の日付に 0 ミリ秒を追加していたため、日付を取得した理由です1.1.1970

于 2012-08-07T05:54:54.853 に答える
1

画面に現在の日付を表示するには、これを行います..

String s = new SimpleDateFormat("dd-MM-YYYY").format(new Date());

画面にStringを表示します。

于 2012-08-07T06:08:16.707 に答える
0

new Date()それ以外の場合は、01.01.197000:00:00から0秒後に日付を取得します。new Date(0)

于 2012-08-07T05:52:45.160 に答える
0

new Date(0)は使用しないでください。パラメータは、エポックからの時間である1.1.1970です。new Date()を使用するだけです。

于 2012-08-07T05:53:05.680 に答える
0

必ず「java.util.Date;」をインポートしてください。「java.sql.Date;」ではありません。そうしないと、パラメーターを通過できなくなります。

于 2014-11-05T21:42:08.570 に答える