欢迎访问宙启技术站
智能推送

利用Java函数实现日期格式化

发布时间:2023-05-20 05:28:04

在Java中,日期格式化是一种非常常见的操作。简单来说,日期格式化就是将日期转化为字符串,或者将字符串转化为日期。在Java中,实现日期格式化可以使用Java的SimpleDateFormat类。下面我们就来介绍一下如何使用这个类来进行日期格式化。

1. SimpleDateFormat类的概述

SimpleDateFormat是Java中用来格式化日期的一个类,可以将Date类型的日期对象转换为指定格式的日期字符串,也可以把日期字符串按照指定格式转化为Date对象。这个类提供了一系列的构造方法以及格式化日期的方法,具体可参考Java文档。在使用SimpleDateFormat时,需要指定一个日期格式字符串,其中各个字符代表的含义如下:

字符 | 说明

-|-

yyyy | 年份,从4位数字表示

MM | 月份,2位数字表示,不足补0

M | 月份,1位或2位数字表示,不足不补0

dd | 日期,2位数字表示,不足补0

d | 日期,1位或2位数字表示,不足不补0

HH | 小时,24小时制,2位数字表示,不足补0

H | 小时,24小时制,1位或2位数字表示,不足不补0

hh | 小时,12小时制,2位数字表示,不足补0

h | 小时,12小时制,1位或2位数字表示,不足不补0

mm | 分钟,2位数字表示,不足补0

m | 分钟,1位或2位数字表示,不足不补0

ss | 秒,2位数字表示,不足补0

s | 秒,1位或2位数字表示,不足不补0

S | 毫秒数,3位数字表示

2. 将日期对象格式化成字符串

要将日期对象格式化成字符串,可以使用SimpleDateFormat类提供的format方法。该方法的参数为一个日期对象,返回值为格式化后的日期字符串。示例代码如下所示:

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatTest {
    public static void main(String[] args) {
        Date now = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
        String str = sdf.format(now);
        System.out.println(str);
    }
}

通过上述代码,我们可以获取到当前的日期时间,并将其格式化为指定格式的字符串。具体的,此示例中的输出结果为:2021-09-07 14:08:28 743。其中,如果需要输出12小时制的时间,则将格式字符串中的HH改为hh即可。

3. 将字符串格式化成日期对象

要将字符串格式化成日期对象,可以使用SimpleDateFormat类提供的parse方法。该方法的参数为一个日期字符串,返回值为转化后的日期对象。需要注意的是,需要保证传入的日期字符串和指定的日期格式能够匹配,否则会报错。示例代码如下所示:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateFormatTest {
    public static void main(String[] args) {
        String str = "2021-09-07 14:08:28 743";
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");
        try {
            Date date = sdf.parse(str);
            System.out.println(date);
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

通过上述代码,我们可以将一个日期字符串格式化成对应的日期对象,并输出该日期对象。需要注意的是,parse方法可能会抛出ParseException异常,需要进行异常处理。

4. 总结

在Java中,SimpleDateFormat类是使用最广泛的日期格式化类之一。通过掌握其构造方法和format、parse方法,我们可以很方便地进行日期格式化的操作。通过将日期转化成指定格式的字符串,或者将字符串转化成日期对象,我们可以更好地处理一些与日期有关的数据。