使用SimpleDateFormat类来实现时间跟字符串的转化

时间:2023-03-08 19:45:48

使用Date和SimpleDateFormat类表示时间

1、Date类

需要处理日期和时间的相关数据时可以使用 java.util 包中的 Date 类,这个类最主要的作用就是获取当前时间。下面看看用法:

import java.util.Date;

public class TestDate {

	public static void main(String[] args) {
// 使用默认的构造方法创建Date对象
Date date = new Date();
// 输出date对象
System.out.println(date);// 输出内容为:Wed Apr 24 18:12:30 CST 2019
} }

可以看出默认的输出格式不是我们常见的日期格式。如果想要按指定的格式进行显示,如 2014-06-11 09:22:30 ,那该怎么做呢?此时就到了 java.text 包中的 SimpleDateFormat 类大显身手的时候了!!可以使用 SimpleDateFormat 来对日期时间进行格式化,如可以将日期转换为指定格式的文本,也可将文本转换为日期。下面看看其用法:

2、SimpleDateFormat类

  1. 使用 format() 方法将日期转换为指定格式的文本

     import java.text.SimpleDateFormat;
    import java.util.Date; public class TestDate { public static void main(String[] args) {
    // 使用默认的构造方法创建Date对象
    Date date = new Date();
    // 输出date对象
    System.out.println(date);// 输出内容为:Wed Apr 24 18:12:30 CST 2019 // 创建SimpleDateFormat对象,并指定目标格式
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    // 调用format方法,对当前日期进行格式化,返回一个字符串
    String now = sdf.format(date);
    System.out.println(now);// 输出内容为:2019-04-24 18:21:09
    } }

代码中的 “yyyy-MM-dd HH:mm:ss” 为预定义字符串, yyyy 表示四位年, MM 表示两位月份, dd 表示两位日期, HH 表示小时(使用24小时制), mm 表示分钟, ss 表示秒,这样就指定了转换的目标格式,最后调用 format() 方法将时间转换为指定的格式的字符串。

  1. 使用 parse() 方法将文本转换为日期

     import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date; public class TestDate { public static void main(String[] args) {
    // 创建日期格式字符串
    String source = "2019年04月24日 18:34:25";
    // 创建SimpleDateFormat对象
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
    try {
    Date now = sdf.parse(source);
    System.out.println(now);// 输出:Wed Apr 24 18:34:25 CST 2019
    } catch (ParseException e) {
    e.printStackTrace();
    }
    } }