Java中提供了方便的API来进行毫秒和日期的相互转换。毫秒是1970年1月1日0时0分0秒UTC(以英国格林威治标准时间计)到当前时间的毫秒数,也被称为UNIX时间戳。Date类中的getTime()方法可以获得当前时间的毫秒数。
Date date = new Date(); long millis = date.getTime(); System.out.println("当前时间的毫秒数:" + millis);
但是毫秒数并不直观,我们通常还需要将其转换成可读的日期格式。Java提供了SimpleDateFormat类来进行日期格式化。在格式化之前,我们需要将毫秒数转换成Date对象。
long millis = 1586788800000L; // 2020年4月14日0时0分0秒 Date date = new Date(millis); SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); String dateString = sdf.format(date); System.out.println(dateString);
反过来,如果我们有一个日期字符串,需要将其转换成毫秒数,也可以使用SimpleDateFormat类。首先要解析日期字符串,然后调用Date类的getTime()方法即可。
String dateString = "2020年04月14日 00:00:00"; SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss"); Date date = sdf.parse(dateString); long millis = date.getTime(); System.out.println("毫秒数:" + millis);
总之,Java提供了简单的API来进行毫秒和日期的相互转换。掌握这些知识点,可以方便地处理时间相关的问题。