1. 程式人生 > 實用技巧 >dateFormat 轉換 object 日期格式時,年份不正確

dateFormat 轉換 object 日期格式時,年份不正確

在使用轉換map返回的object 日期格式時,返回的時間少一年,月份和日期都對不上

public static void main(String[] args) throws ParseException {
    Map<String, Object> map = new HashMap<>();
    map.put("createDate", "2020-09-23 00:00:00");
    
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    SimpleDateFormat dateFormat1 
= new SimpleDateFormat("yyyyMMdd");
java.util.Date date
= dateFormat.parse(map.get("createDate").toString()); String date1 = dateFormat1.format(date); java.util.Date date2 = dateFormat1.parse(map.get("createDate").toString()); String date3 = dateFormat1.format(date2); System.out.println(date);
//Wed Sep 23 00:00:00 CST 2020 System.out.println(date1); //20200923

System.out.println(date2); //Mon Dec 09 00:00:00 CST 2019 System.out.println(date3); //20191209 }

由於時間不夠,沒能深究原因,大概猜測是,轉換格式時需要和object裡面的時間格式一致