Android System.currentTimeMillis()與日期之間的相互轉(zhuǎn)換

System.currentTimeMillis()與日期 之間是可以相互轉(zhuǎn)換的,大多數(shù)Android開發(fā)者都知道 通過

日期對應毫秒值轉(zhuǎn)換日期

SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = dateformat.format(System.currentTimeMillis());

可以獲取如“ 2016-09-02 23:02:17 ”這樣的一個字符串,但是反過來呢?如果給我們一個“ 2016-09-02 23:02:17 ”字符串,我們能否得到當前日期對應的毫秒值呢? 答案是肯定的。

日期轉(zhuǎn)換毫秒值

SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
    long time = dateformat.parse("2016-09-02 23:02:17").getTime();
    System.out.println(time);
} catch (ParseException e) {
    e.printStackTrace();
}

輸出:1472828537000;
由此可見,毫秒值與日期之間是可以互轉(zhuǎn)的。

總結(jié):測試時候可能會出現(xiàn)當前獲取的毫秒值轉(zhuǎn)換為日期后,再轉(zhuǎn)為毫秒值時候 與前者不一致,這個是因為獲取的是毫秒值,而轉(zhuǎn)換為日期后是以秒為單位了,所以轉(zhuǎn)換后才會出現(xiàn)這種情況。 如果想要解決那么就得在時間格式化的時候?qū)懗?SimpleDateFormat dateformat = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss.SSS”);

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容