`
lancijk
  • 浏览: 390336 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java中的时间操作(判断工作日和休息日)和判断日期大小

    博客分类:
  • Java
阅读更多

--1:日期操作以免自己要的时候忘记了

 

public  Date reportGetDate(Date d,String type,int number){
		Calendar calendar = Calendar.getInstance();
		calendar.setTime(d);
		if(type.equals("YEAR"))calendar.add(Calendar.YEAR,number);
		if(type.equals("MONTH"))calendar.add(Calendar.MONTH,number);
		if(type.equals("DAY"))calendar.add(Calendar.DAY_OF_MONTH,number);
		if(type.equals("HOUR"))calendar.add(Calendar.HOUR_OF_DAY,number);
		if(type.equals("min"))calendar.add(Calendar.MINUTE,number);
		Date date = calendar.getTime();
		return date;
		}

 

2:判断只加工作日的情况,系统还有可能设置了休息日和加班日

/**
	 * 这个算法判断周末和加班日和休息日
	 * @throws Exception 
	 */
	public int returnDay(Date bgnTime) throws Exception{
		int isweekday=0;
		int Sum=0;
		// bgnTime=new Date();	 
		for(isweekday=0;isweekday<3;){
			
			SimpleDateFormat   sf   =   new   SimpleDateFormat( "yyyy-MM-dd "); 
			String workflag=ycsdjService.getSysholiday(sf.format(bgnTime));
//这个是系统里设置的节假日和加班日
			if(workflag ==null){
				workflag="WH";
			}
			//Date date=new Date();
			Calendar cal=Calendar.getInstance();
			cal.setTime(bgnTime); 
			if(cal.get(Calendar.DAY_OF_WEEK) == 1 || cal.get(Calendar.DAY_OF_WEEK) == 7){
				if(workflag !=null&&workflag.equals("W")){
					isweekday+=1;
					cal.add(Calendar.DATE, 1);
					bgnTime=cal.getTime();
					Sum+=1;
				}else{
					cal.add(Calendar.DATE, 1);
					bgnTime=cal.getTime();
					Sum+=1;
				}
			}else{
				if(workflag !=null&&workflag.equals("H" )){
					cal.add(Calendar.DATE, 1);
					bgnTime=cal.getTime();
					Sum+=1;
				}else{
					isweekday+=1;
					Sum+=1;
					cal.add(Calendar.DATE, 1);
					bgnTime=cal.getTime();
					
				}
			}
			
		}
		return Sum;
		
	}

  

3:将第二个方法的值传回给第一个方法.就知道是加几天了

 

4:判断日期大小直接取方法 getTime();

 Date dt1 = new Date();
            Date dt2 = new Date();
            if (dt1.getTime() > dt2.getTime()) {
                System.out.println("dt1 在dt2前");
            } else if (dt1.getTime() < dt2.getTime()) {
                System.out.println("dt1在dt2后");
            }

 

 

 

2
0
分享到:
评论

相关推荐

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

    在Java中,我们可以使用`org.json`库来解析和操作JSON数据。 假设工具类有一个名为`isHoliday()`的方法,接收一个字符串类型的日期(例如"20190304"),该方法会检查这个日期是否在节假日列表中。如果在,返回true...

    Java 实现判断今天是工作日、假日、节假日.zip

    Java 实现判断今天是工作日、假日、节假日。 其中有两个方法,一个方法是: /** * 获取今天日期值 */ public Date getCurrentDate() { return Calendar.getInstance().getTime(); } 另一个方法是: /** * ...

    java获取当年的法定节假日和工作日等信息

    * 07-获取一年中休息日的天数(法定节假日+不需要补班的周末)。 * 节假日信息配置表,用于存放法定节假日及周六日倒班信息。 字段包括:year,lawHolidays,extraworkdays * 1、创建ChineseWorkDay对象 * ...

    Java 实现将每年的节假日,周末,工作日详情记录至数据库表中

    1. **日期处理库**: Java中,`java.time`包提供了强大的日期时间处理功能,例如`LocalDate`类用于处理日期,`DayOfWeek`枚举表示一周中的日子。我们可以通过这些类获取每年每一天的详细信息,如判断是否为工作日、...

    java工作日计算(去除法定假日)

    在Java编程中,计算工作日是一项常见的需求,特别是在金融、物流和项目管理等领域。这个话题主要涉及如何在Java中处理日期和...这个过程涉及了文件读取、日期时间处理和自定义逻辑的实现,是Java开发中的一项实用技能。

    判断日期是否是节假日(包含JSON依赖的jar包)

    以上是对“判断日期是否是节假日(包含JSON依赖的jar包)”这个项目的详细解析,涵盖了JSON处理、日期操作和基本的业务逻辑设计。这个功能在许多实际应用场景中都非常有用,例如在自动化调度、提醒服务或者数据分析...

    java swing 时间日期选择控件

    标签“java日期控件”强调了这个主题关注的是Java中与日期选择相关的控件,不仅仅是Swing,也可能是JavaFX或其他库提供的日期选择组件。但在这里,我们主要讨论的是Swing环境下的实现。 在压缩包的"swing 时间控件...

    Java 日期比较工具类

    Java 日期比较工具类 各种日期操作及计算( 获取两个日期 间隔天数 间隔月数 格式化日期 )

    java计算全年周日 及过滤法定节假日

    java代码先获取全年的周末周日,定义全年的法定节假日,然后根据输入的日期计算,当前日期后的工作日,也可以用于计算工作日

    2023年日历(标记工作日,节假日,调休,周末),计算两个日期相差的工作日天数

    压缩包里有2个文件,用于计算两个日期相差的工作日天数(排除周末和法定节假日): 1、excel表为2023年日历数据,并且备注工作日、周末,调休、节假日类型,可导入数据库。 2、SQL文件为2023年所有日期的插入SQL,并...

    java操作文件,得到文件名,大小,时间,及修改时间

    java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间

    2022年日期类型(工作日,节假日,周末,节假日调休)

    1、excel表数据为2022年周末休息日和法定节假日数据,并且备注周末和节假日类型,可导入数据库,用于计算两个日期相差的工作日天数(排除周末和法定节假日)。 2、SQL文件为2022年所有日期,并标注:工作日、法定节...

    java图像识别(判断两个图是否相似)

    在Java中进行图像识别,尤其是判断两张图片是否相似,是一个涉及计算机视觉和图像处理的复杂任务。本话题将深入探讨如何使用Java实现这一功能。在实际应用中,图像相似度判断广泛应用于图像检索、内容识别、人脸识别...

    android 判断字符串是否是日期格式

    其次,还可以使用Java 8引入的`java.time`包中的`DateTimeFormatter`和`LocalDateTime`类,它们提供了更现代、更安全的日期时间处理方法: ```java import java.time.format.DateTimeFormatter; import java.time....

    Java日期操作方法工具类实例【包含日期比较大小,相加减,判断,验证,获取年份等】

    Java 日期操作方法工具类实例是 Java 语言中对日期进行操作的工具类,提供了日期比较大小、相加减、判断、验证、获取年份等多种常见操作。该工具类主要用于解决 Java 日期操作中的一些常见问题。 日期比较大小 在 ...

    根据User Agent String判断客户端平台及浏览器源程序[Java和PHP版]

    开发者可能会编写一个函数,如`getUserAgentInfo()`,该函数使用字符串操作函数(如`strpos()`、`substr()`)和条件判断来解析UA字符串。PHP社区也提供了一些第三方库,如`Browser Detection Library`,可以简化这个...

    Java节假日算法(免费)

    Calendar 类是 Java 中用于处理日期和时间的类,而 Date 类是 Java 中用于表示日期和时间的类。在这个方法中,我们使用 Calendar 类来计算每个假期的天数,并将其添加到总天数中。 另一个重要的点是,我们需要考虑...

    Java 计算日期月差

    计算两日期之间的差,看看两日期之间能差几个月的问题

    java判断百度地图的点是否在多边形区域内

    在Java编程中,判断一个点是否位于多边形区域内是一个常见的地理空间运算问题。这个问题在地图应用、GIS(地理信息系统)以及游戏开发等领域有广泛的应用。以下是对这个知识点的详细阐述: 1. **坐标系统与投影**:...

    JAVA生成订单号(日期+流水号)

    通过上述步骤,我们可以在Java中实现一个基于日期和流水号的订单号生成器。对于提供的`java订单号(时间加流水号).txt`文件,可能包含了具体的代码实现或使用示例,你可以查阅该文件以获取更详细的实现细节。在实际...

Global site tag (gtag.js) - Google Analytics