Java中擷取時間的幾種方法

來源:互聯網
上載者:User

Java中關於時間的操作主要是:
1、擷取目前時間,和某個時間進行比較。此時主要拿long型的時間值。
方法如下:
要使用 java.util.Date 。擷取目前時間的代碼如下

Date date = new Date();

date.getTime() ;

還有一種方式,使用 System.currentTimeMillis() ;
都是得到一個當前的時間的long型的時間的毫秒值,這個值實際上是目前時間值與1970年一月一號零時零分零秒相差的毫秒數

2、擷取某種格式的日期。
方法:

擷取時間的格式,需要用到一個專門用於時間格式的類 java.text.SimpleDateFormat 。

首先,定義一個 SimpleDateFormat 變數

SimpleDateFormat sdf = new SimpleDateFormat("",Locale.SIMPLIFIED_CHINESE);

這個建構函式的定義如下:

SimpleDateFormat(String   pattern, Locale   locale)

第一個參數 pattern ,我們後面再解釋,這裡我們使用一個 "", 第二個參數,是用來設定時區的,這裡用到了 java.util.Locale 這個類,這個類了面定義了很多靜態變數,直接拿過來用就 OK ,我們把時區設定為 Locale.SIMPLIFIED_CHINESE ,只看名字,這個靜態變數的意義已經很清楚了。

接下來我們使用這個 SimpleDateFormat 把目前時間格式化為一個如下格式的時間字串“ XXXX 年 XX 月 XX 日 _XX 時 XX 分 XX 秒”,代碼:

sdf.applyPattern("yyyy年MM月dd日_HH時mm分ss秒");

String timeStr = sdf.format(new Date());

擷取時間格式的函數是 format ,這個函數的參數是 java.util.Date 對象,這個沒有什麼花頭。

要說明一下的是這個 pattern ,所謂的模式。這裡, yyyy,MM,dd 等,這就是模式。

我們可以在 SimpleDateFormat 的建構函式中指定模式,比如

SimpleDateFormat sdf = new SimpleDateFormat(" yyyy-MM-dd ",Locale.SIMPLIFIED_CHINESE);

也可以擷取時間格式的時候使用applyPattern函數臨時指定,上面的例子就是這樣。

什麼字元代表什麼,這是 j2se 約定好的,設定模式的時候,我們可以使用約定好的字元加上任何我們想要的字串。

j2se 對字元所代表的模式的約定列表如下:

Letter Date or Time Component Presentation
G Era designator Text
y Year Year
M Month in year Month
w Week in year Number
W Week in month Number
D Day in year Number
d Day in month Number
F Day of week in month Number
E Day in week Text
a Am/pm marker Text
H Hour in day (0-23) Number
k Hour in day (1-24) Number
K Hour in am/pm (0-11) Number
Hour in am/pm (1-12) Number
Minute in hour Number
Second in minute Number
Millisecond Number 
Time zone  General time zone
Time zone RFC 822 time zone

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.