一、什麼是時間戳
時間戳是指格林威治時間1970年01月01日00時00分00秒起至現在的總秒數,通常用10位數字表示。
在Java中,System.currentTimeMillis()方法可以返回當前時間的時間戳。
long timestamp = System.currentTimeMillis();
二、時間戳轉日期
我們可以使用Java的SimpleDateFormat類將時間戳轉化為日期格式。
long timestamp = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String date = sdf.format(new Date(timestamp));
System.out.println(date); // 2021-07-16 14:05:36
其中,SimpleDateFormat中的參數”yyyy-MM-dd HH:mm:ss”表示日期格式。
三、時區問題
在不同的時區中,同樣的時間戳所表示的時間是不同的。因此,在進行時間戳轉換時,我們需要注意時區問題。
Java中可以使用TimeZone類來設置時區,通常使用TimeZone.getDefault()方法獲取系統默認時區。
long timestamp = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT+8")); // 將時區設置為東八區
String date = sdf.format(new Date(timestamp));
System.out.println(date); // 2021-07-16 22:05:36
四、日期轉時間戳
我們也可以將日期轉化為時間戳,使用Java中的getTime()方法即可。
String dateStr = "2021-07-16 14:05:36";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
long timestamp = sdf.parse(dateStr).getTime();
System.out.println(timestamp); // 1626421536000
五、總結
本文介紹了Java中將時間戳轉化為日期、設置時區、將日期轉化為時間戳的方法。在進行時間戳轉換時,需要注意時區問題,使用TimeZone類來設置時區。
原創文章,作者:JMHV,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/132056.html