SimpleDateFormat的时区问题

		Date data = new Date();  //2019-12-17 11:49:35
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
        
        String dataStr = sdf.format(data);
        System.out.println("dataStr->" + dataStr);
        Date parse = sdf.parse(dataStr);
        System.out.println("parse" + parse);

在这里插入图片描述
个人理解:sdf.setTimeZone是设置SimpleDateFormat内置的时区为"UTC"。
sdf.format(data) 将时间data按照SimpleDateFormat内置的时区进行转换
sdf.parse(dataStr) 按照本地的时区进行转换,如SimpleDateFormat的内置时区和北京时区差8小时,则加8小时。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章