Date和字符日期相互转换和解析

一、Date常用方法:

public static void main(String[] args) {
        Date d1 = new Date();
        //获取当前时间
        System.out.println(d1);
        //用getTime获取当前毫秒值
        System.out.println(d1.getTime());
        //用setTime设置毫秒值
        d1.setTime(1574059387480L);
        //用toLocaleString输出当前时间
        System.out.println(d1.toLocaleString());
    }

运行结果分别是:
Date和字符日期相互转换和解析_第1张图片
二、SimpleDateFormat:
1.常用的模式字母及对应关系:

  y			年
  M 		月
  d			日
  H			时
  m			分
  s			秒

2.SimpleDateFormat的构造方法:
public SimpleDateFormat()是构造一个SimpleDateForma,使用默认模式和日期格式。

将日期格式化成日期/时间字符串。

public static void main(String[] args) {
        //格式化,从Date到String
        Date d= new Date();
        SimpleDateFormat sdf = new SimpleDateFormat();
        String s = sdf.format(d);
        System.out.println(s);
    }

结果为:
Date和字符日期相互转换和解析_第2张图片
3.解析(String到Date)
public Date parse(String source):从给定字符串的开始解析文本生成日期。

//从String到Date
        String ss = "2019-11-18 00:00:00";
        SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date dd = sdf2.parse(ss);
        System.out.println(dd);

结果为:
Date和字符日期相互转换和解析_第3张图片
三、代码练习:
1.创建时间类:

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

public class DateUtils {
    //构造私有化
    private DateUtils(){
    }
    /**
     * 将Date按照指定的模式 格式化日期
     * @param date 需要格式化的日期
     * @param format 格式化的模式
     * @return 返回的是格式化后的字符串
     */
    public static String dataTotring(Date date,String format){
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        String dataStr = sdf.format(date);
        return dataStr;
    }
    /*
    * 把字符串解析为指定格式的日期
    * 返回值类型:Date
    * 参数:String s ,String format
    * */
    public static Date stringToDate(String s,String format) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        Date d = sdf.parse(s);
        return d;
    }
}

2.创建测试类:

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

public class test {
    public static void main(String[] args) throws ParseException {
      //创建日期对象
        Date d = new Date();
        String s1 = DateUtils.dataTotring(d, "yyyy年MM月dd日 HH:mm:ss");
        System.out.println(s1);

        System.out.println("==============");
        String s = "2018-08-09 12:12:12";
        Date dd = DateUtils.stringToDate(s, "yyyy-MM-dd HH:mm:ss");
        System.out.println(dd);
    }
}

输出结果为:
Date和字符日期相互转换和解析_第4张图片

你可能感兴趣的:(JAVA,Date)