Java_Date_02_截断日期到日

oracle 的 trunc 函数能很方便的将日期截断。现在有个需求,需要用java实现与 oracle 的 trunc 函数 相同的功能。

 

1.需求:将日期截断到日

          即 将格式为 2018-01-04 03:06:49  日期转换为 格式为  2018-01-04  的日期

2.实现方法:

 用 DateFormat .format 方法获取只包含年月日的日期字符串,然后再通过 DateFormat .parse方法将日期字符串转为日期

 

        DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        
        //1.获取开始日期,当前日期          2018-01-04 03:06:49
        String startDateStr=df.format(new Date());
        Date startDate=df.parse(startDateStr);
System.out.println(
"开始日期:"+new Date()); System.out.println("startDate:"+startDate);

 

 

3.需求拓展:获取日期相隔天数

方法:

按照之前的思路,我们将两个日期截断到日,然后相减即可得到 日期相隔天数

 

代码实现:

        DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        
        //1.获取开始日期,当前日期          2018-01-04 03:06:49
        String startDateStr=df.format(new Date());
        Date startDate=df.parse(startDateStr);
        System.out.println("开始日期:"+new Date());
        System.out.println("startDate:"+startDate);
        
        //2.获取结束日期
        String endDateStr="2018-01-06 03:06:49";
        Date endDate=df.parse(endDateStr);
        System.out.println("结束日期:"+endDate);
        
        //3.求间隔天数
        long spanDays=(endDate.getTime()-startDate.getTime() )/ (1000*3600*24);
        
        System.out.println("间隔天数:"+spanDays);

 

posted @ 2018-01-04 15:37  shirayner  阅读(721)  评论(0编辑  收藏  举报