获取两个日期字符串之间的所有天数

一、获取两个日期字符串中间的天:

public static List<String> getDaysBetweenTwoDays(String startDay,String endDay) throws ParseException {
        List<String> list = new ArrayList<>();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//格式化为年月
        Calendar min = Calendar.getInstance();
        Calendar max = Calendar.getInstance();
        min.setTime(sdf.parse(startDay));
        min.set(min.get(Calendar.YEAR), min.get(Calendar.MONTH), min.get(Calendar.DATE),0,0,0);
        max.setTime(sdf.parse(endDay));
        max.set(max.get(Calendar.YEAR), max.get(Calendar.MONTH), max.get(Calendar.DATE),23,59,59);
        Calendar curr = min;
        while (curr.before(max)) {
            list.add(sdf.format(curr.getTime()));
            curr.add(Calendar.DATE, 1);
        }
        return list;
    }

二、获取两个日期字符串之间的月份

/**
     * @description 获取两个日期之间的月份
     * @author tank
     * @date 2019/8/24 16:47
     *
     * @param minDate
     * @param maxDate
     * @return java.util.List<java.lang.String>
     */
    public static List<String> getMonthBetween(String minDate, String maxDate) throws ParseException {
        ArrayList<String> result = new ArrayList<String>();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM");//格式化为年月
        Calendar min = Calendar.getInstance();
        Calendar max = Calendar.getInstance();
        min.setTime(sdf.parse(minDate));
        min.set(min.get(Calendar.YEAR), min.get(Calendar.MONTH), 1);
        max.setTime(sdf.parse(maxDate));
        max.set(max.get(Calendar.YEAR), max.get(Calendar.MONTH), 2);
        Calendar curr = min;
        while (curr.before(max)) {
            result.add(sdf.format(curr.getTime()));
            curr.add(Calendar.MONTH, 1);
        }
        return result;
    }

原文地址:https://www.cnblogs.com/tank073/p/11438924.html

时间: 2024-10-06 22:01:15

获取两个日期字符串之间的所有天数的相关文章

Java 获取两个日期之间的日期

1.前期需求,两个日期,我们叫他startDate和endDate,然后获取到两个日期之间的日期 /** * 获取两个日期之间的日期 * @param start 开始日期 * @param end 结束日期 * @return 日期集合 */ private List<Date> getBetweenDates(Date start, Date end) { List<Date> result = new ArrayList<Date>(); Calendar tem

C#获取两个日期之间的间隔

在应用程序开发的过程中,很多时候涉及到时间的操作,例如时间的大小比较以及两个时间的间隔.此文就简单介绍下C#语言如何获取两个时间之前的间隔.在C#中获取两个时间之间的间隔需要使用到TimeSpan类,该对象表示两个日期之间的差异.TimeSpan结构用于测量持续时间的最大时间单位是一天.时间间隔以天为单位进行测量,以确保一致性,因为较大单位时间(例如月和年)的天数会有所不同.TimeSpan对象的值是等于表示的时间间隔的刻度数.刻度等于100纳秒,或一千万分之一秒.获取两个时间的间隔可以使用下列

sql 中,如何获取两个日期之前月数、周数、天数

1.获取两个日期之间的月数.周数.天数语法 --1.获取两个日期之间的月数.周数.天数 --1.1)声明参数 declare @startDate varchar(20) declare @endDate varchar(20) --1.2)获取两个日期直接的月数 select DATEDIFF(MM,@startDate,@endDate) --1.3)获取两个日期直接的月数 select DATEDIFF(WW,@startDate,@endDate) --1.4)获取两个日期直接的月数 s

获取两个日期的时间差(天数、时、分、秒)

其实这个时间在MySQL中处理,但是本着尽量避免逻辑在数据库中处理的原则,还是在程序断处理更佳,减少数据库的压力,大负载也是这种思想. 获取两个日期的时间差(天数.时.分.秒) function timeDiff( $beginTime, $endTime ) { if ( $beginTime < $endTime ) { $starttime = $beginTime; $endtime = $endTime; } else { $starttime = $endTime; $endtime

MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数

MySql计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数 计算两日期时间之间相差的天数,秒数,分钟数,周数,小时数,这里主要分享的是通过MySql内置的函数 TimeStampDiff() 实现. 函数 TimeStampDiff() 是MySQL本身提供的可以计算两个时间间隔的函数,语法为: TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) 返回日期或日期时间表达式datetime_expr1 和datetime_expr2the 之

Vbs获取两个日期天数间隔

最近想通过用户密码过期邮件提醒脚本想换一种执行方法,原来方法是vbs连接到AD后台获取用户的相关字段属性,然后判断,然后现在系统升级了,用户的相关信息被保存到了SQL数据库中,所以想通过vbs连接数据库进行判断及发送提示,对于这个功能我们下一篇文章将会介绍,本次介绍的是vbs如何判断两个日期间隔: vbs脚本中已经定义了datediff 函数进行两个日期或者时间的间隔进行判断,所以随便总结了一下分享给有需要的童鞋:对于热爱学些的童鞋来说,w3shool网站是一个好的帮助学习站点,可以供参考,里面

获取两个点经纬度之间的距离

/** * js获取两个经纬度之间的距离 * @param lat1 第一点的纬度 * @param lng1 第一点的经度 * @param lat2 第二点的纬度 * @param lng2 第二点的经度 * @returns {Number} */ function getDistance(lat1, lng1, lat2, lng2) { var radLat1 = lat1*Math.PI / 180.0; var radLat2 = lat2*Math.PI / 180.0; var

java 获取两个日期相差的毫秒数

方法一可以使用date的getTime()方法来将当前日期格式的时间转换为毫秒数,进而相减. long systime = new Date().getTime();//当前系统时间        long oldtime = old.getTime();//相比较的时间        Long time = (systime - oldtime);//相差毫秒数 方法二则使用calendar 的getTimeInMillis() 方法来将当前日期格式的时间转换为毫秒数. Calendar no

Java 计算两个日期相差月数、天数

package com.myjava; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; public class MyCalendar { /** * @param args * @throws ParseException */ public static void main(String[] args) throws ParseException {