首页 > 解决方案 > DateTimeFormat 给出与 SimpleDateformat 不同的结果

问题描述

为什么DateTimeFormatter给出不同的结果SimpleDateFormat

String dateString = "0819-03-03";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(dateString);

System.out.println(sdf.format(date));            

System.out.println(DateTimeFormatter.ISO_LOCAL_DATE.format(
    ZonedDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault())
));

输出是:

0819-03-03    // SimpleDateFormat    
0819-03-07    // DateTimeFormatter

我怀疑这与日期很旧有关。

标签: java

解决方案


推荐阅读