介绍
对于Java开发人员来说,在进行日期时间处理时,经常需要进行日期时间的格式化。 Java提供了简单而强大的日期时间格式化类,可以实现日期时间的转换,同时也可以实现日期时间的格式化输出。
本文将详细介绍Java日期格式化的使用,并给出具体的代码示例。包括通过SimpleDateFormat实现日期时间格式化和解析、DateTimeFormatter实现日期时间格式化和解析的方法。
SimpleDateFormat
SimpleDateFormat是Java日期格式化的基础类,主要使用的方法为format和parse,即格式化和解析,下面将详细介绍:
1、格式化日期时间
通常情况下我们需要将一个Date对象进行格式化输出,那么我们就需要用到SimpleDateFormat的format方法,代码示例:
Date date = new Date(); //获取当前时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置时间格式 String str = sdf.format(date);//格式化时间 System.out.println("当前时间:" + str);//输出时间
上面的代码中,我们首先获取当前时间,然后创建SimpleDateFormat对象,并设置时间格式为“yyyy-MM-dd HH:mm:ss”,最后利用format方法进行格式化输出,输出结果为2021-10-22 17:48:35。
2、解析日期时间
除了将Date对象进行格式化输出,如果我们有一个符合指定格式的日期时间字符串,我们可以用SimpleDateFormat的parse方法将其转换成一个Date对象,代码示例:
String str = "2021-10-22 17:48:35";//指定时间字符串 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置时间格式 Date date = sdf.parse(str);//将时间字符串转换成Date对象 System.out.println("转换后的时间:" + date);//输出转换后的时间
上面的代码中,我们首先声明一个符合指定格式的日期时间字符串,然后创建SimpleDateFormat对象,并设置时间格式为“yyyy-MM-dd HH:mm:ss”,接着利用parse方法将指定的时间字符串转换成对应的Date对象,最后输出转换后的时间。输出结果为Fri Oct 22 17:48:35 CST 2021。
DateTimeFormatter
除了SimpleDateFormat,Java8中也提供了新的日期和时间API,其中较为常用的是DateTimeFormatter类,它提供了格式化和解析日期时间的方法,下面将详细介绍:
1、格式化日期时间
与SimpleDateFormat类似,我们可以通过创建DateTimeFormatter对象并指定格式,来对日期时间进行格式化,代码示例:
LocalDateTime now = LocalDateTime.now();//获取当前日期时间 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");//设置格式化方式 String strTime = now.format(formatter);//格式化时间 System.out.println("当前时间:" + strTime);//输出当前时间
上面的代码中,我们首先获取当前时间,然后创建DateTimeFormatter对象,并指定格式为“yyyy-MM-dd HH:mm:ss”,接着调用now对象的format方法将日期时间格式化成指定格式的字符串,最后输出格式化后的时间。
2、解析日期时间
如果我们有一个符合指定格式的日期时间字符串,我们就可以通过DateTimeFormatter的parse方法将其转换成对应的LocalDateTime对象,代码示例:
String strTime = "2021-10-22 17:48:35";//指定时间字符串 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");//设置格式化方式 LocalDateTime dateTime = LocalDateTime.parse(strTime, formatter);//解析时间字符串 System.out.println("转换后的时间:" + dateTime);//输出转换后的时间
上面的代码中,我们首先声明一个符合指定格式的日期时间字符串,然后创建DateTimeFormatter对象,并指定格式为“yyyy-MM-dd HH:mm:ss”,接着调用parse方法将指定的时间字符串转换成对应的LocalDateTime对象,最后输出转换后的时间。
总结
本文详细阐述了Java日期格式化的方法和应用,主要介绍了SimpleDateFormat和DateTimeFormatter两个类,分别从格式化和解析两个方面进行了说明,并给出了具体的代码示例。希望本文能够为Java开发人员在处理日期时间问题时提供一些帮助和借鉴。