6

誰かが次のことを詳しく説明してください。

long表す値がありますdate

  1. 値にtimezone関連付けられるものは何ですか?long

  2. long値を適切な日付に変換する方法はtime zone?

  3. timezone値に関連付けられているを識別する方法はありlong dateますか?

4

4 に答える 4

7

長いのは、1970年1月のGMTからのミリ秒です。したがって、その点では、GMTです。

于 2012-10-08T04:27:13.553 に答える
4

longを表す値はjava.util.Date、エポックから経過したミリ秒数です。(1970年1月1日)

/**
 * Allocates a <code>Date</code> object and initializes it to 
 * represent the specified number of milliseconds since the 
 * standard base time known as "the epoch", namely January 1, 
 * 1970, 00:00:00 GMT. 
 *
 * @param   date   the milliseconds since January 1, 1970, 00:00:00 GMT.
 * @see     java.lang.System#currentTimeMillis()
 */
public Date(long date) {
    fastTime = date;
}
  • long値に関連付けられているタイムゾーンはどうなりますか?
    長い値にユニットを取り付けることはできますか?いいえ。
    これは、int 2が与えられた場合、それが何を表すかを言うのと似ています。。それは2マイルまたは2ポンドである可能性があります。

  • 長い値を適切なタイムゾーンの日付に変換するにはどうすればよいですか?
    上記の理由でできません。

  • 長い日付の値に関連付けられているタイムゾーンを特定する方法はありますか?
    いいえ。

于 2012-10-08T04:26:52.170 に答える
4

Date ( long またはjava.util.Dateのいずれか) は、特定の時点を表します。

カレンダーを扱っていない限り、TimeZone は関係ありません。

次のように、特定の TimeZone と Locale のカレンダーを作成できます。

long rightNow = System.currentTimeMillis();
Locale exampleLocale = Locale.GERMANY;
TimeZone zone = TimeZone.getTimeZone("EST");

Calendar theCalendar = Calendar.getInstance(zone, exampleLocale);
theCaledar.setTime(new Date(rightNow));
于 2012-10-08T04:14:48.407 に答える
2

時間が長い形式の場合、TimeZone関連付けられません。

long 値に Timezone を適用するには、いずれかSimpleDateFormat(または) APIを使用する必要があります。Calendar

于 2012-10-08T03:49:46.397 に答える