yyyy-MM-dd'T'HH:mm:ss.SSS'Z'即UTC時間,與String日期轉換


本文為博主原創,未經允許不得轉載:

  最近在使用一個時間插件的時候,接收到的時間格式是 ’2017-11-27T03:16:03.944Z’ ,當我進行雙向數據綁定的時候,由后台傳過來的時間綁定到時間

控件上時,日期差了一天,在瀏覽器控制台發現我傳輸的時期是yyyy-MM-dd格式,當控件自己解析的時候,差了8個小時,日期就少了一天。

如上圖所示,在網上搜了很多,發現這個日期格式為:UTC日期格式。

UTC日期即世界時,即格林尼治平太陽時,是表示地球自轉速率的一種形式。

UTC就是世界標准時間,與北京時間相差八個時區。所以只要將UTC時間轉化成一定格式的時間,再在此基礎上加上8個小時就得到北京時間了。

當我在后台給前台控件綁定的時間格式為  yyyy-MM-dd'T'HH:mm:ss.SSS'Z' 格式的時候,解析就OK了。

所以在此列出UTC日期格式與String的日期格式轉換方法:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class UTCTimeFormatTest {
    //UTC就是世界標准時間,與北京時間相差八個時區。所以只要將UTC時間轉化成一定格式的時間,再在此基礎上加上8個小時就得到北京時間了。
    public static void main(String[] args) throws ParseException {
        //Z代表UTC統一時間:2017-11-27T03:16:03.944Z
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
        Date date = new Date();
        System.out.println(date);
        String str = format.format(date);
        System.out.println(str);
SimpleDateFormat dayformat
= new SimpleDateFormat("yyyy-MM-dd"); String source ="2018-09-18";
//先將年月日的字符串日期格式化為date類型 Date day
= dayformat.parse(source);
     //然后將date類型的日期轉化為UTC格式的時間 String str2
= format.format(day); System.out.println(str2); } }

運行結果為:

 

留言以鼓勵自己和看我博客的人:

每個人都應是守望者,守望我們的心智,我們的理想,以防它在生活中不知不覺地墜落、被操控和被自己遺忘。。。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM