簡體   English   中英

設置日期對象 Java

[英]Set a Date Object Java

我有一個日期對象 myDate(say)。 執行以下操作后:

Calendar cal = Calendar.getInstance();
cal.set(Calendar.MONTH, 9);
cal.set(Calendar.DATE, 24);
cal.set(Calendar.YEAR, 2013);
cal.set(Calendar.HOUR,13);
cal.set(Calendar.MINUTE,45);
cal.set(Calendar.SECOND,52);

我想將 myDate 對象設置為上述值,從而顯示以下輸出。

Mon Sep 09 13:45:52 PST 2013

請讓我知道該怎么做。

import java.util.*;

public class DateTest {
    public static void main(String[] args) {
        Date myDate;
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.MONTH, 8);
        cal.set(Calendar.DATE, 24);
        cal.set(Calendar.YEAR, 2013);
        cal.set(Calendar.HOUR,13);
        cal.set(Calendar.MINUTE,45);
        cal.set(Calendar.SECOND,52);
        myDate = cal.getTime();
        System.out.println(myDate);
    }
}

月份屬性從 January = zero 開始 為什么哦,為什么 Sun 會做這種違反直覺的事情,我不知道。

import java.util.*;

public class DateTest {
    public static void main(String[] args) {
        Date myDate;
        Calendar cal = Calendar.getInstance();
        cal.set(Calendar.MONTH, 8);
        cal.set(Calendar.DATE, 24);
        cal.set(Calendar.YEAR, 2013);
        cal.set(Calendar.HOUR,13);
        cal.set(Calendar.MINUTE,45);
        cal.set(Calendar.SECOND,52);
        myDate = cal.getTime();
        System.out.println(myDate);
    }
}

另一個考慮因素是,輸出中有一個時區 - 如果您想要 Java 安裝的時區,沒有問題。 如果您想要 PST並且 Java 時區默認值在其他地方,則使用以下構造函數:

TimeZone timezone = TimeZone.getTimeZone("America/Los_Angeles");
Calendar cal = Calendar.getInstance(timezone);

你可以寫:

myDate.setTime(cal.getTimeInMillis());

使用SimpleDateFormat

new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy").format(cal.getTime())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM