`

判断某个给定日期在不在本周内

阅读更多
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;

import org.apache.commons.lang3.time.DateFormatUtils;
import org.apache.commons.lang3.time.DateUtils;


public class TestMain {

public static void main(String args[]){
System.out.println(checkDate("20161023121110"));
}

public static boolean checkDate(String date) {
boolean flag = true;
Date lastWithdrawTime = null;
try {
lastWithdrawTime = DateUtils.parseDate( date, "yyyyMMddHHmmss");
} catch (ParseException e) {
e.printStackTrace();
}
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
try {
// 判断今天是否是周日,如果是周日,计算时间向前退一周
if (cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) {
cal.add(Calendar.WEEK_OF_YEAR, -1);
String startDateStr = DateFormatUtils.format(new Date(cal.getTime().getTime() + 24 * 3600 * 1000), "yyyyMMdd");
Date startDate = DateUtils.parseDate(startDateStr, "yyyyMMdd");
String endDateStr = DateFormatUtils.format(new Date(cal.getTime().getTime() + 8 * 24 * 3600 * 1000), "yyyyMMdd");
Date endDate = DateUtils.parseDate(endDateStr, "yyyyMMdd");
if (lastWithdrawTime.after(startDate) && lastWithdrawTime.before(endDate)) {
flag = false;
}
} else {
cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
String startDateStr = DateFormatUtils.format(cal.getTime(), "yyyyMMdd");
Date startDate = DateUtils.parseDate(startDateStr, "yyyyMMdd");
String endDateStr = DateFormatUtils.format(new Date(cal.getTime().getTime() + 7 * 24 * 3600 * 1000), "yyyyMMdd");
Date endDate = DateUtils.parseDate(endDateStr, "yyyyMMdd");
if (lastWithdrawTime.getTime() == startDate.getTime()||(lastWithdrawTime.after(startDate) && lastWithdrawTime.before(endDate))) {
flag = false;
}
}
} catch (Exception e) {
flag = true;
}
return flag;
}
}
分享到:
评论

相关推荐

    C#实现判断一个时间点是否位于给定时间区间的方法

    在C#编程中,有时我们需要判断一个特定的时间点是否处于某个给定的时间区间内。这在日程管理、定时任务调度或任何与时间相关的逻辑中非常常见。本篇将详细介绍如何利用C#来实现这个功能,包括时间的处理、字符串解析...

    判断是否是节假日以及几个工作日后的日期(包含json格式依赖jar包)

    在Java编程中,有时我们需要处理与日期相关的任务,例如判断某个日期是否是节假日,或者计算几个工作日后的新日期。这个工具类就是为了解决这样的问题而设计的。它包含了一个功能丰富的API,允许开发者轻松地进行...

    js判断节假日实例代码

    接着,定义了一个名为 `isWorkday` 的函数,这个函数接收一个日期字符串作为参数,用于判断给定日期是否为工作日。如果未提供日期字符串,则默认取当前日期。 函数内部首先将输入的日期字符串转换为 `Date` 对象,...

    SQL 判断给定日期值(或时间段)所在星期的星期一和星期天的日期

    一、给定一个日期值,求出此日期所在星期的星期一和星期天的日期数据 例如给定一个日期 2010-09-01,求出它所在星期的星期一是2010-08-30,星期天是2010-09-05 Function创建如下: 代码如下: USE [MSSQL] GO SET ANSI...

    易语言长整数与日期时间转换

    在实际项目中,这可能包括记录用户活动时间、统计特定日期区间内的数据,或者在程序中实现定时任务等功能。 总结一下,易语言的长整数与日期时间转换是通过"日期_到长整数"和"长整数_到日期"这两个内置函数实现的,...

    java API 在包java.util中有一个GregorianCalendar类,使用它可以得到一年内某个月的日历.zip

    在给定的压缩包文件中,可能包含了关于如何使用`GregorianCalendar`来获取一年内特定月份的日历信息的练习代码,如`Exercise6_6.java`,以及可能的辅助文件`G`和`H`。 首先,`GregorianCalendar`类继承自抽象类`...

    js检测判断日期大于多少天的方法

    在JavaScript中,处理日期是一项常见的任务,尤其是在构建动态网页和前端应用时。本文将详细解释如何使用JavaScript检测并判断当前日期是否大于指定日期的若干天。首先,我们需要理解JavaScript中的Date对象,它是...

    一波JavaScript日期推断脚本分享_.docx

    这里定义了两个函数,`inNationalDay`和`inSpringFestival`,用于检查给定日期是否在国庆节或春节期间。函数首先创建一个结果对象,然后根据日期的月份和日期值判断是否在国庆节(9月24日至10月7日)或春节(通常在...

    输入日期返回前一天

    自选语言编写程序:前一日函数PreDate。实现功能为:输入1000 年到2018 年之间的某个日期,函数返回这一天的前一天的日期。(考虑无效输入:首先判断输入日期是否合法.)

    易语言源码易语言判断某一时间是第几个星期.rar

    在这个“易语言源码易语言判断某一时间是第几个星期.rar”压缩包中,包含了一个易语言编写的程序,该程序主要用于确定给定日期是当年的第几个星期。 在计算机编程中,处理日期和时间是一项常见的任务。易语言提供了...

    日期转换星期函数

    另一种常见方法是使用Zeller's Congruence公式,这是一个基于模运算的简单算法,可以计算出给定日期是星期几。Zeller's Congruence公式如下: ``` h = (q + ((13(m+1))/5) + K + (K/4) + (J/4) - 2J) % 7 ``` 其中...

    给定时间自动获取上月25号本月24号.doc

    5. 日期比较:在代码中,我们可以看到日期比较的实现,例如判断某个日期是否在另一个日期之前。这种日期比较可以帮助我们实现业务逻辑中的日期判断。 6. 日期字符串解析:在代码中,我们可以看到日期字符串解析的...

    三天打鱼两天晒网c语言实现判断

    我们需要通过编程来判断在给定的一段时间内,某项任务的执行频率是否符合这个规律。 C语言是计算机编程的基础语言之一,它具有高效、灵活和跨平台的特点。要实现这个功能,我们需要掌握以下C语言的关键知识: 1. *...

    UiPath-Date的处理.zip

    `GetNextWeekday`和`GetPreviousWeekday`活动可以帮助你找到给定日期之后或之前的某个工作日,这对于处理与工作日相关的业务逻辑十分方便。 9. **日期范围检查**: 使用`IsWithin`活动,可以判断一个日期是否在两...

    请教用sql实现通过已知的年,月,第几周和周几,得到具体的日期

    -- 如果目标日期不在该月内,需要调整到下一个月 IF @StartDate > EOMONTH(DATEFROMPARTS(@Year, @Month, 1)) BEGIN SET @StartDate = DATEADD(MONTH, 1, @StartDate); END -- 找到目标星期几 SET @StartDate = ...

    2.3 是否是合法的日期1

    在给定的描述中,提到了几个关于逻辑表达式的问题,这与日期判断是相关的,因为逻辑表达式常常在条件语句中用于决定是否执行某个日期验证。例如: 1. 表达式`x!=4`和`x都是布尔表达式,如果`x`的值为4,那么`x!=4`...

    日期插件类

    - 日期插件类通常包含比较日期的功能,比如判断两个日期哪个更早或更晚,或者检查某个日期是否在给定的日期范围内。JavaScript中的`Date.prototype.getTime()`方法可以获取日期的时间戳,通过比较时间戳进行日期的...

    闰年判断表.RAR

    在编程领域,判断闰年是一项常见的任务,尤其在处理日期和时间的函数中。以下是一个简单的Python代码示例,用于判断给定年份是否为闰年: ```python def is_leap_year(year): if year % 4 != 0: return False ...

    oracle日期时间函数大全.docx

    `BETWEEN`运算符可用于判断某个日期是否在两个日期之间,但需要注意,`BETWEEN`包含边界两边的值,因此`a_date BETWEEN to_date('20011201', 'yyyymmdd') AND to_date('20011231', 'yyyymmdd')`会包含12月1日和12月...

    时间转换和星期推算(MATLAB版)

    同时,可以结合日期运算计算出某个日期是星期几,或者给定一个日期,推算出其前一周或后一周的日期。 5. **日期范围操作**: MATLAB的`daterange`函数可以生成日期范围,这对于处理时间序列数据非常有用。例如,`...

Global site tag (gtag.js) - Google Analytics