其他分享
首页 > 其他分享> > DateFormat类与SimpleDateFormat类介绍和DateFormat类的format方法与parse方法

DateFormat类与SimpleDateFormat类介绍和DateFormat类的format方法与parse方法

作者:互联网

DateFormat类与SimpleDateFormat类介绍

DateFormat类

java.text.DateFormat 是日期/时间格式化子类的抽象类,我们通过这个类可以帮我们完成日期和文本之间的转换,也就是可以在Date对象与String对象之间进行来回转换。

格式化:按照指定的格式,从Date对象转换为String对象。

解析︰按照指定的格式,从String对象转换为Date对象。

常用的格式

 

 

 

java.text.DateFormat:是日期/时间格式化子类的抽象类

作用:
  格式化 (也就是日期->文本)、解析(文本->日期) 

成员方法:
    String format(Date date)按照指定的模式,把Date日期,格式化为符合模式的字符串

    Date parse(String source)把符合模式的字符串,解析为Date日期

    DateFormat类是一个抽象类,无法直接创建对象使用,可以使用DateFormat的子类

    java.text.simpLeDateFormat extends DateFormat
构造方法:
    SimpLeDateFormat(String pattern)用给定的模式和Z认语言环境的日期格式符号构造simpLeDateForma

参数:

    String pattern:传递指定的模式模式:区分大小写的

    写对应的模式,会把模式替换为对应的日期和时间
      "yyyy-M-dd HH : mm: ss"
      "yyyy 年 mm 日 HH 日 mm 分 ss 秒”

注意:

  模式中的字母不能更改,连接模式的符号可以改变

DateFormat类的format方法与parse方法

format方法

使用DateFormat类中的方法format,把日期格式化为文本

string format(Date date)按照指定的模式,把Date日期,格式化为符合模式的字符串

    public static void main(String[] args) {
        //1.创建simpLeDateFormat对象,构造方法中传递指定的模式
        SimpleDateFormat sdf = new SimpleDateFormat( "yyyy年M月dd日HH时mm分ss秒");
        //2.调用SimpLeDateFormat对象中的方法format ,按照构造方法中指定的模式,把Date日期格式化为符合模式的字符串(文本)
        Date date = new Date();
        String text = sdf.format(date);
        System.out.println(date);//Tue Jul 05 13:09:29 CST 2022
        System.out.println(text);//2022年7月05日13时09分29秒

        
        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date1 = new Date();
        String text1 = sdf1.format(date1);
        System.out.println(date1);//Tue Jul 05 13:11:51 CST 2022
        System.out.println(text1);//2022-07-05 13:11:51
    }

parse方法

使用DateFormat类中的方法parse,把文本解析为日期

Date parse( String source)把符合模式的字符串,解析为Date日期

注意:
  public Date parse(String source) throws ParseExceptionparse方法声明了一个异常叫ParseException解析异常

  如果字符串和构造方法中的模式不一样,那么程序就会抛出此异常

  调用一个抛出了异常的方法,就必须的处理这个异常,要么throws继续声明抛出这一个异常,要么try...catch自己处理这个异常

 public static void main(String[] args) throws ParseException {
        //1.创建simpleDateFormat对象,构造方法中传递指定的模式
        SimpleDateFormat sdf = new SimpleDateFormat(  "yyyy年M月dd日HH时mm分ss秒");
        //2.调用SimpleDateFormat对象中的方法parse,把符合构造方法中模式的字符串,解析为Date日期
        Date date = sdf.parse("2088年08月08日17时01分10秒");
        System.out.println(date);//Sun Aug 08 17:01:10 CST 2088
    }

 

这是一个错误写法
    public static void main(String[] args) throws ParseException {
        //1.创建simpleDateFormat对象,构造方法中传递指定的模式
        SimpleDateFormat sdf = new SimpleDateFormat(  "yyyy年M月dd日HH时mm分ss秒");
        //2.调用SimpleDateFormat对象中的方法parse,把符合构造方法中模式的字符串,解析为Date日期
        Date date = sdf.parse("2088年08月08日17时01分10");
        System.out.println(date);
        /*
            Exception in thread "main" java.text.ParseException: Unparseable date: "2088年08月08日17时01分10"
            at java.text.DateFormat.parse(DateFormat.java:366)
            at com.Demo_04.DateParse.main(DateParse.java:12)
         */
    

 

标签:String,format,DateFormat,模式,SimpleDateFormat,parse,Date
来源: https://www.cnblogs.com/yuzong/p/16446049.html