System.out.println(new Date("Mon Jul 13 11:48:10 CST 2020"));//错误写法,有时区的原因
以下是正确的做法
String date = "Mon Jul 13 11:48:10 CST 2020";
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy",Locale.US);
Date d=sdf.parse(date);
System.out.println(d.toString());
DateTimeFormatter df = DateTimeFormatter.ofPattern("EEE MMM dd HH:mm:ss z yyyy",Locale.US);
LocalDateTime ldt = LocalDateTime.parse("Mon Jul 13 11:48:10 CST 2020",df);
System.out.println(ldt.getDayOfMonth());
System.out.println(ldt.getHour());
System.out.println(ldt.toString());
LocalDateTime dateTime =LocalDateTime.ofEpochSecond(1594612090000L/1000,0, ZoneOffset.ofHours(8));
System.out.println(dateTime.toString());
//获取秒数
Long second = LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"));
//获取毫秒数
Long milliSecond = LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli();