private int getWorkingDay(Calendar d1, Calendar d2) { int result = -1; if (d1.after(d2)) { // swap dates so that d1 is start and d2 is end java.util.Calendar swap = d1; d1 = d2; d2 = swap; } int betweendays = getDaysBetween(d1, d2); int charge_date = 0; int charge_start_date = 0;//开始日期的日期偏移量 int charge_end_date = 0;//结束日期的日期偏移量 // 日期不在同一个日期内 int stmp; int etmp; stmp = 7 - d1.get(Calendar.DAY_OF_WEEK); etmp = 7 - d2.get(Calendar.DAY_OF_WEEK); if (stmp != 0 && stmp != 6) {// 开始日期为星期六和星期日时偏移量为0 charge_start_date = stmp - 1; } if (etmp != 0 && etmp != 6) {// 结束日期为星期六和星期日时偏移量为0 charge_end_date = etmp - 1; } result = (getDaysBetween(this.getNextMonday(d1), this.getNextMonday(d2)) / 7) * 5 + charge_start_date - charge_end_date; System.out.println("between day is-->" + betweendays); return result; } private Calendar getNextMonday(Calendar date) { Calendar result = null; result = date; do { result = (Calendar) result.clone(); result.add(Calendar.DATE, 1); } while (result.get(Calendar.DAY_OF_WEEK) != 2); return result; } private int getDaysBetween(Calendar d1, Calendar d2) { if (d1.after(d2)) { // swap dates so that d1 is start and d2 is end java.util.Calendar swap = d1; d1 = d2; d2 = swap; } int days = d2.get(java.util.Calendar.DAY_OF_YEAR) - d1.get(java.util.Calendar.DAY_OF_YEAR); int y2 = d2.get(java.util.Calendar.YEAR); if (d1.get(java.util.Calendar.YEAR) != y2) { d1 = (java.util.Calendar) d1.clone(); do { days += d1.getActualMaximum(java.util.Calendar.DAY_OF_YEAR); d1.add(java.util.Calendar.YEAR, 1); } while (d1.get(java.util.Calendar.YEAR) != y2); } return days; }
您还没有登录,请您登录后再发表评论
在IT领域,尤其是在数据分析、项目管理和时间管理等工作中,计算两个工作日之间的实际工作日是一项常见的任务。这有助于准确地规划进度、设定截止日期以及进行工作效率分析。以下将详细介绍标题和描述中提到的三种...
本类依赖commons-lang包 java日期计算简单实用方法如下: SimpleDateFormat format = new ...//计算两个日期之间的工作日总数 int count = workdayUtils.getWorkdayCount(new Date(), format.parse("2013-08-13"));
计算除周六日、法定节假日以外两个日期之间的间隔天数
excel计算两个日期之间的工作日,周一至周五为工作日。
该工具类用于两个时间段之间节假日的计算(可获取两个时间段之间的节假日天数,小时,分钟,秒)
JAVA时间工具类(计算法定工作日工时):计算某个日期加上几个工作日后的一个工作日期(除周末和法定节假日),计算某个日期后一天的工作日期(除周末和法定节假日),计算两个日期的真实工作日(除周末和法定节假日),...
- **返回值**:包含两个日期之间所有日期的列表。 - **实现逻辑**: - 循环遍历从开始日期到结束日期之间的每一天。 - 将每一天的日期添加到列表中。 #### 三、计算工作日的具体实现 1. **获取某个月的所有日期*...
如果下一个日期是周末(周六或周日),那么我们就需要继续检查下下一个日期,直到找到第一个工作日。同时,如果存在特定的节假日,我们需要额外考虑这些日期,确保它们不被视为工作日。 以下是一个简单的示例代码...
Java 实现判断今天是工作日、假日、节假日。 其中有两个方法,一个方法是: /** * 获取今天日期值 */ public Date getCurrentDate() { return Calendar.getInstance().getTime(); } 另一个方法是: /** * ...
2. **计算工作日**:计算两个日期之间的工作日数量,首先需要排除周末(周六和周日)。这可以通过判断日期的星期几来实现,例如使用`DayOfWeek`枚举。然后,需要考虑法定节假日,这些通常需要额外的处理。 3. **...
在 Java 语言中,计算两个日期之间的工作日时间是一个常见的需求,特别是在需要排除周末和法定节假日的情况下。本文将通过一个示例代码,详细介绍如何计算两个日期之间的工作日时间,排除周末和法定节假日。 首先,...
压缩包里有2个文件,用于计算两个日期相差的工作日天数(排除周末和法定节假日): 1、excel表为2023年日历数据,并且备注工作日、周末,调休、节假日类型,可导入数据库。 2、SQL文件为2023年所有日期的插入SQL,并...
这个功能可能封装在一个名为`getNthWorkingDay()`的方法中,它接受两个参数:一个日期字符串和一个整数n,表示n个工作日后的日期。这个方法需要考虑到节假日和周末,如果遇到节假日则跳过,直到找到第n个工作日。...
在编程领域,尤其是在数据分析、日程管理或者时间序列分析中,计算两个日期之间的差异并考虑工作日排除节假日和周末是一项常见的任务。C++作为一种强大的系统级编程语言,提供了丰富的库来处理日期和时间操作。本篇...
本文详细介绍了如何使用Java处理日期合并的问题,通过对`TimeoffDateDTO`类的定义和日期合并算法的具体实现,提供了一种有效的方法来解决实际工作中经常遇到的时间段重叠问题。这种方法不仅适用于员工请假时间的管理...
网上排除节假日、周六周日 获取相差时间 分为四种情况, 精确到天 此工具类在此基础之上进行优化, 分为俩种情况, 精确到分钟,保留俩位小数 (精确到秒 需自己加工下) 入口方法: getWorkHours
- `monthsBetween(Date date1, Date date2)`:计算两个日期之间的月数差。 - `yearsBetween(Date date1, Date date2)`:计算两个日期之间的年数差。 9. **时间戳操作**: - `getTimeStamp(Date date)`:获取日期...
在数据库管理和数据分析领域,准确地计算两个日期之间的有效工作日数量是一项非常实用的功能,特别是在需要排除周末(通常指周六和周日)的情况下。这种计算方法对于财务报告、项目管理以及人力资源规划等方面至关...
使用Java 8的日期时间API(`java.time`包)来处理日期和时间,如计算两个日期之间的天数,判断是否为工作日等。同时,为了提高效率和减少数据库交互,可以利用Redis的特性,将部分计算结果缓存起来。 综上所述,这...
`java.time`包还提供了丰富的日期和时间计算功能,例如`minusDays()`用于减少日期,`plusWeeks()`和`minusWeeks()`用于添加或减少周数,`with(TemporalAdjuster)`可以进行复杂的日期调整,如下一个工作日等。...
相关推荐
在IT领域,尤其是在数据分析、项目管理和时间管理等工作中,计算两个工作日之间的实际工作日是一项常见的任务。这有助于准确地规划进度、设定截止日期以及进行工作效率分析。以下将详细介绍标题和描述中提到的三种...
本类依赖commons-lang包 java日期计算简单实用方法如下: SimpleDateFormat format = new ...//计算两个日期之间的工作日总数 int count = workdayUtils.getWorkdayCount(new Date(), format.parse("2013-08-13"));
计算除周六日、法定节假日以外两个日期之间的间隔天数
excel计算两个日期之间的工作日,周一至周五为工作日。
该工具类用于两个时间段之间节假日的计算(可获取两个时间段之间的节假日天数,小时,分钟,秒)
JAVA时间工具类(计算法定工作日工时):计算某个日期加上几个工作日后的一个工作日期(除周末和法定节假日),计算某个日期后一天的工作日期(除周末和法定节假日),计算两个日期的真实工作日(除周末和法定节假日),...
- **返回值**:包含两个日期之间所有日期的列表。 - **实现逻辑**: - 循环遍历从开始日期到结束日期之间的每一天。 - 将每一天的日期添加到列表中。 #### 三、计算工作日的具体实现 1. **获取某个月的所有日期*...
如果下一个日期是周末(周六或周日),那么我们就需要继续检查下下一个日期,直到找到第一个工作日。同时,如果存在特定的节假日,我们需要额外考虑这些日期,确保它们不被视为工作日。 以下是一个简单的示例代码...
Java 实现判断今天是工作日、假日、节假日。 其中有两个方法,一个方法是: /** * 获取今天日期值 */ public Date getCurrentDate() { return Calendar.getInstance().getTime(); } 另一个方法是: /** * ...
2. **计算工作日**:计算两个日期之间的工作日数量,首先需要排除周末(周六和周日)。这可以通过判断日期的星期几来实现,例如使用`DayOfWeek`枚举。然后,需要考虑法定节假日,这些通常需要额外的处理。 3. **...
在 Java 语言中,计算两个日期之间的工作日时间是一个常见的需求,特别是在需要排除周末和法定节假日的情况下。本文将通过一个示例代码,详细介绍如何计算两个日期之间的工作日时间,排除周末和法定节假日。 首先,...
压缩包里有2个文件,用于计算两个日期相差的工作日天数(排除周末和法定节假日): 1、excel表为2023年日历数据,并且备注工作日、周末,调休、节假日类型,可导入数据库。 2、SQL文件为2023年所有日期的插入SQL,并...
这个功能可能封装在一个名为`getNthWorkingDay()`的方法中,它接受两个参数:一个日期字符串和一个整数n,表示n个工作日后的日期。这个方法需要考虑到节假日和周末,如果遇到节假日则跳过,直到找到第n个工作日。...
在编程领域,尤其是在数据分析、日程管理或者时间序列分析中,计算两个日期之间的差异并考虑工作日排除节假日和周末是一项常见的任务。C++作为一种强大的系统级编程语言,提供了丰富的库来处理日期和时间操作。本篇...
本文详细介绍了如何使用Java处理日期合并的问题,通过对`TimeoffDateDTO`类的定义和日期合并算法的具体实现,提供了一种有效的方法来解决实际工作中经常遇到的时间段重叠问题。这种方法不仅适用于员工请假时间的管理...
网上排除节假日、周六周日 获取相差时间 分为四种情况, 精确到天 此工具类在此基础之上进行优化, 分为俩种情况, 精确到分钟,保留俩位小数 (精确到秒 需自己加工下) 入口方法: getWorkHours
- `monthsBetween(Date date1, Date date2)`:计算两个日期之间的月数差。 - `yearsBetween(Date date1, Date date2)`:计算两个日期之间的年数差。 9. **时间戳操作**: - `getTimeStamp(Date date)`:获取日期...
在数据库管理和数据分析领域,准确地计算两个日期之间的有效工作日数量是一项非常实用的功能,特别是在需要排除周末(通常指周六和周日)的情况下。这种计算方法对于财务报告、项目管理以及人力资源规划等方面至关...
使用Java 8的日期时间API(`java.time`包)来处理日期和时间,如计算两个日期之间的天数,判断是否为工作日等。同时,为了提高效率和减少数据库交互,可以利用Redis的特性,将部分计算结果缓存起来。 综上所述,这...
`java.time`包还提供了丰富的日期和时间计算功能,例如`minusDays()`用于减少日期,`plusWeeks()`和`minusWeeks()`用于添加或减少周数,`with(TemporalAdjuster)`可以进行复杂的日期调整,如下一个工作日等。...