日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 編程 > Java > 正文

java通過輸入工作日數(shù)(正或負)得到具體日期或計算兩個日期之間的工作日

2019-11-11 07:54:20
字體:
供稿:網(wǎng)友

由于工作需要:加減工作日得到具體的日期和計算兩個日期之間工作日兩種需求(當然參考了其他作者的內(nèi)容,在這里自己做了重新處理):

首先手動錄入今年或最近幾年的工作日和調(diào)休日,先在Excel中錄入,格式如下(寫END為了補齊第三列,后面加載時候要用):
節(jié)假日 法定調(diào)休工作日 END
2017/1/28 END
2017/1/29 2017/1/14 END
2017/1/30 2017/1/15 END

2. 把除了表頭“節(jié)假日”“法定調(diào)休工作日”“END”的其他三列拷貝到一個新的sheet中; 3. 點擊excel中的另存為:文本文件(制表符分割)也就是.txt文件; 4. 加載生成的.txt文件; 5. 加載一次后存入static靜態(tài)代碼塊中; 6. 構(gòu)建了getWorkDayNum(String dateStartStr,String dateEndStr)方法和getWorkDay(String dateStartStr,int n) 方法分別獲取兩個日期之間的工作日和距離dateStartStr有n個工作日的日期,如果n為負數(shù)則再加判斷即可,后面也寫了; 7. 具體代碼如下:(當然要在啟動的時候加載讀取txt的方法,在grails中是這樣寫的,如HolidayWorkdayUtil.initialize(grailsapplication.config.workday.holiday.file as String)

import java.io.File;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.Calendar;import java.util.Date;import java.util.List;import java.util.Scanner;import java.util.regex.Pattern;/** * 根據(jù)讀取配置的txt判斷是否為法定節(jié)假日,及法定工作日 * @author */public class HolidayWorkdayUtil { PRivate SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); private static List<String> holidays = new ArrayList<String>(); private static List<String> workdays = new ArrayList<String>(); /** * 獲取剩余的工作日天數(shù) * @param date * @return * @throws ParseException */ public int getWorkDayNum(String dateStartStr,String dateEndStr) throws ParseException{ Date now=sdf.parse(dateStartStr); boolean flag = true; int count=0; String today=""; Date da=sdf.parse(dateEndStr); if(da.getTime()>=now.getTime()){ //System.out.println(holidays); // System.out.println(workdays); Calendar c = Calendar.getInstance(); for(int i=0;i<=3650;i++){ c.setTime(now); c.set(Calendar.DATE, c.get(Calendar.DATE) + i); int dateType = getDateType(c); today = sdf.format(c.getTime()); //System.out.println("date..."+today); //如果文件不存在當前日期。判斷是否周六日 if(dateType==0){ if(c.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY|| c.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY){ flag = false; }else{ flag=true; } }else{//如果存在當前日期,根據(jù)返回的類型判斷 if(dateType==1){//節(jié)假日 flag = false; }else if(dateType==2){//工作日 flag = true; } } // System.out.println(today+"是:"+(flag==true?"工作日":"節(jié)假日")); if(flag){ count++; } // System.out.println(count); if(today.equals(dateEndStr) || today==dateEndStr){ break; } } } return count-1; } /** * 判斷當天是否是工作日 (工作日:true;節(jié)假日:false) * @param filePath * @return * @throws ParseException */ public String getWorkDay(String dateStartStr,int n) throws ParseException{ boolean flag = true; int count=0; String today=""; //System.out.println(holidays); //System.out.println(workdays); Date now=sdf.parse(dateStartStr); Calendar c = Calendar.getInstance(); for(int i=0;i<=3650;i++){//這里是一天一天的加,如果有更好的也可以 c.setTime(now); c.set(Calendar.DATE, c.get(Calendar.DATE) + i); int dateType = getDateType(c); today = sdf.format(c.getTime()); //System.out.println("date..."+today); //如果文件不存在當前日期。判斷是否周六日 if(dateType==0){ if(c.get(Calendar.DAY_OF_WEEK)==Calendar.SUNDAY|| c.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY){ flag = false; }else{ flag=true; } }else{//如果存在當前日期,根據(jù)返回的類型判斷 if(dateType==1){//節(jié)假日 flag = false; }else if(dateType==2){//工作日 flag = true; } } // System.out.println(today+"是:"+(flag==true?"工作日":"節(jié)假日")); if(flag){ count++; } // System.out.println(count); if(count==(n+1)){ break; } } return today; } /** * 根據(jù)判斷當前時間是否是節(jié)假日還是工作日 (txt中不存在當前日期:0;節(jié)假日:1;工作日:2) * 如果當前日期在txt中的節(jié)假日和工作日都寫了,默認的工作日 * @return */ private int getDateType(Calendar c){ int type = 0; String today = sdf.format(c.getTime()); if(holidays.size()>0){ for(String holiday:holidays){ if(holiday.equals(today)){ type = 1; break; } } } if(workdays.size()>0){ for(String workday:workdays){ if(workday.equals(today)){ type = 2; } } } return type; } /** * 讀取excel中的節(jié)假日和工作日,同時統(tǒng)一日期格式為2017-01-01 */ public static void initialize(String filePath){ if(filePath==null||"".equals(filePath)){ return ; } Scanner in = null; try { in = new Scanner(new File(filePath)); String result1 = ""; while (in.hasNextLine()) { result1 = in.nextLine() ; String[] strArray=result1.split("/t"); if(strArray==null||strArray.length==0){ return; } //獲取第一列數(shù)據(jù)-節(jié)假日 String analyStartDate=""; String startDateStr=""; try{ analyStartDate=strArray[0].trim(); if(analyStartDate=="" || analyStartDate.equals("") || "http://".contains(analyStartDate)){ analyStartDate=""; }else{ Pattern pa = Pattern.compile("http://D+"); String[] numbers = pa.split(analyStartDate); int a=0; for(String number:numbers){ if(null!=number && !"".equals(number)){ if(a>0 && a<3){ int i = Integer.parseInt(number); if(i<10 && !number.contains("0")){ startDateStr=startDateStr+"-"+"0"+number; }else{ startDateStr=startDateStr+"-"+number; } a++; }else if(a==0){ startDateStr=""+number; a++; }else{ break; } } } if(a<3 || a>=4){ startDateStr=""; } analyStartDate=startDateStr; holidays.add(analyStartDate); } }catch(Exception e){ e.printStackTrace(); } //獲取第二列數(shù)據(jù)-工作日 String workDate=""; String workDateStr=""; try{ workDate=strArray[1].trim(); if(workDate=="" || workDate.equals("") || "http://".contains(workDate)){ workDate=""; }else{ Pattern pa = Pattern.compile("http://D+"); String[] numbers = pa.split(workDate); int a=0; for(String number:numbers){ if(null!=number && !"".equals(number)){ if(a>0 && a<3){ int i = Integer.parseInt(number); if(i<10 && !number.contains("0")){ workDateStr=workDateStr+"-"+"0"+number; }else{ workDateStr=workDateStr+"-"+number; } a++; }else if(a==0){ workDateStr=""+number; a++; }else{ break; } } } if(a<3 || a>=4){ workDateStr=""; } workDate=workDateStr; workdays.add(workDate); } }catch(Exception e){ e.printStackTrace(); } } } catch (Exception e) { e.printStackTrace(); } finally { if (in != null) { in.close(); } } }}

如果輸入的天數(shù)是負數(shù)則加判斷

HolidayWorkdayUtil h=new HolidayWorkdayUtil();if(n<0){ Calendar c = Calendar.getInstance(); c.setTime(new Date()); c.set(Calendar.YEAR, c.get(Calendar.YEAR) - 1);//如果為負數(shù),先把時間調(diào)回到一年前開始迭代 def nn=-n; //println nn; for(int i=0;i<=365;i++){ c.add(5, 1); //表示天加一 startDateStr=Util.dateParser1.format(c.getTime()); dayNum = h.getWorkDayNum(startDateStr,todayStr); //println workday if(dayNum==nn){ break; } } workday=startDateStr; }else{ workday = h.getWorkDay(todayStr,n); }
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
中文字幕国产亚洲| 亚洲丝袜一区| 亚洲成av人片在线| 日韩欧美在线综合网| 欧美日韩在线中文字幕| 最近免费中文字幕在线第一页| 国产婷婷色一区二区三区| 日韩欧美在线网站| 国产欧美在线观看| 欧美日韩中国免费专区在线看| 精品日韩在线| 亚洲欧美伊人| 91欧美日韩麻豆精品| 日韩中文字幕网| 久久精品日韩无码| 日韩欧美亚洲国产| 精品三级av| 日韩欧美一级二级三级久久久| 日韩一二三四区| 激情综合色综合久久| aaa欧美日韩| 亚洲福利精品视频| 国产中文在线观看| 欧美日韩国产综合久久| 欧美日韩国产首页| 国产一区三区三区| 亚洲一区精品电影| 久久人人88| 久久99蜜桃精品久久久久小说| 亚洲永久字幕| 97国产视频| 日韩av一区二| 欧美日韩国产综合视频在线观看 | 91精品国产综合久久久久久| 亚洲羞羞网站| 欧美三级日韩三级| 日韩中文字幕观看| 一区三区视频| 欧美成人vr18sexvr| 欧美一卡2卡3卡4卡| 99国内精品| 亚洲热线99精品视频| 五月综合激情日本mⅴ| 美女在线视频一区| 国产免费不卡av| 日韩在线不卡| 免费国产h视频在线观看86| 婷婷中文字幕一区| 亚洲免费精品| 日韩a一区二区| 欧美日韩不卡在线视频| 粉嫩喷白浆久久| 91精品国产综合久久久蜜臀粉嫩| 日本亚洲欧美三级| 国产在线观看a| 国产亚洲一级| 蜜桃久久av一区| 日韩一级免费在线观看| 日韩精品视频在线| 日韩国产成人精品| 欧美99久久| 中文字幕久久精品| 中文字幕欧美日韩精品| 在线看的av| 国产色综合网| 国产综合成人久久大片91| 久久精品最新免费国产成人| 国产视频2区| 欧美日韩中文另类| 九一久久久久久| 国产中文在线| 中文字幕伊人| www.中文字幕在线观看| 欧美国产一级片| 国产福利一区二区在线精品| 日韩中文首页| 精品乱人伦一区二区三区| 精品在线网站观看| 午夜国产福利在线观看| 老司机久久99久久精品播放免费| 一区二区三区在线播放视频| 在线视频三区| 蜜桃精品在线| 日韩亚洲欧美中文在线| 香蕉精品久久| 在线精品视频免费播放| 久艹在线视频| 国产95在线|亚洲| 日韩精品―中文字幕| 日韩欧美综合视频| 久精品在线观看| 亚洲精品中文字幕乱码三区| 国产h片在线观看| 日韩欧中文字幕| 99视频一区| 久久久久久99精品| 久久久另类综合| eeuss一区| 视频一区中文字幕国产| 欧美三级日韩在线| 日韩在线视频二区| 色综合影院在线| 亚洲综合视频一区| 91精品国产自产在线丝袜啪| 日本一级一片免费视频| 欧美日韩国产成人| 久久91精品久久久久久秒播| 日韩欧美中文在线| 蜜桃精品视频| 日韩视频一区在线观看| 国产在线观看黄色| 日本xxxwww免费视频| 黄色一级大片在线免费看国产一| 国产日韩亚洲欧美| 欧美国产91| 国产乱码午夜在线视频| 中文字幕日韩高清| 欧美日韩视频免费看| 国产午夜在线观看| 国产999在线观看| 高清中文字幕在线| 精品国内自产拍在线视频| 青青国产91久久久久久| 91www成人久久| 欧美日韩第一区日日骚| 日韩欧美中文在线| 91亚洲国产| 欧美不卡视频| av中文天堂在线| 欧美日韩一二| 日韩精品在线观| 日韩免费视频| 国产婷婷色一区二区三区在线| 国产福利一区在线观看| 欧美国产一区视频在线观看| 在线观看免费国产成人软件| 国产一卡二卡3卡4卡四卡在线 | 国产高清在线一区| 国产午夜精品视频免费不卡69堂 | 亚洲热线99精品视频| 精品不卡一区二区| 免费精品国产自产拍在| 欧美日韩国产在线看| 日韩精品福利视频| 欧美三级视频在线| 国产高清精品在线| 日韩国产成人| 精品无人国产偷自产在线| 国内激情久久| 日韩中文字幕观看| 一区二区日韩视频| 欧美日韩中文在线| 日韩视频精品在线观看| 亚洲高清不卡一区| 国产免费一级| 粉嫩粉嫩芽的虎白女18在线视频| 黄色资源在线观看| 亚洲免费专区| 黄污视频在线看| 欧美久久在线观看| 欧美日韩色综合| 欧美在线日韩精品| 91久久视频| 91精品国产手机| 亚洲国产91精品在线观看| 黄色国产网站在线播放| 色综合久久六月婷婷中文字幕| 日韩在线a电影| 亚洲一区在线观看网站| 中文字幕亚洲一区二区av在线| 国产欧美在线观看| 精品婷婷伊人一区三区三| 极品久久久久久| 欧美日韩精品区| 日韩欧美综合在线视频| 免费中文字幕日韩欧美| 在线精品日韩| 91精品在线免费| 亚洲第一视频| 久艹在线视频| 欧美日韩国产成人| 日韩国产91| 综合激情国产一区| 中文字幕日韩亚洲| 日韩欧美国产午夜精品| 人人做人人澡人人爽欧美| 二区视频在线观看| 白嫩少妇丰满一区二区| 亚洲一区不卡在线| 中文字幕欧美日韩在线| 精品福利一区二区三区| 日韩视频精品在线观看| 日韩三级精品电影久久久| 亚洲国产欧美日韩在线| 欧美日韩性视频一区二区三区 | 国产www在线观看| 欧美日韩国产123区| 精品久久久91| 日本视频久久久| 久精品在线观看| 国产视频1区| 一区精品在线播放| 国产免费久久| 欧美 日韩 国产在线观看| 欧美在线视频一区二区| 日韩一级二级三级精品视频| 亚洲视频 中文字幕| 国产日韩精品电影| 在线观看免费国产小视频| 樱花草www在线| 日本不卡视频一区| 91精品国产91久久久久久不卡| a级在线免费观看| 国产黄在线观看| 中文字幕精品视频| 天堂在线一区二区三区| 91精品国产色综合久久久蜜香臀| 亚洲欧美99| 精品无人国产偷自产在线| 午夜亚洲一区| a√免费观看在线网址www| 九七久久人人| 欧美久久久精品| 日韩欧美一级二级三级久久久| 欧美日韩精品电影| 日本精品免费观看高清观看| 欧美亚洲国产日韩| 欧美国产中文| 欧美亚洲免费高清在线观看| 欧美国产一区视频在线观看| 国产黄在线观看| 色国产在线视频| 国产91一区| 伊人网站在线| av手机天堂| 欧美 日韩 国产在线| 在线一区二区三区精品| 亚洲黄色片在线观看| 日韩精品视频中文在线观看| 欧美日韩高清不卡| 久久99久久久欧美国产| 亚洲高清视频一区| 国产99对白在线播放| 日韩精品视频在线看| 日韩国产91| 九七久久人人| 日韩你懂的电影在线观看| 日韩中文字幕在线视频观看 | 国产亚洲视频中文字幕视频| 亚洲女人天堂a在线播放| 国产伦精品免费视频| 91 中文字幕| 中文字幕在线观看国产| 中文字幕 欧美日韩| 成人福利一区| 精品福利二区三区| 婷婷久久综合九色国产成人| 亚洲免费观看视频| 日韩精品视频免费| 999精品视频在线观看播放| 久久99精品久久久久子伦| 亚洲欧洲精品在线| 欧美日韩精品在线| 亚洲成a人片在线www| 国产一二三四| 国产欧美综合在线| 精品视频在线导航| 午夜少妇久久久久久久久| 欧美日韩成人一区二区| 欧美日韩国产大片| 欧美久久在线| 欧美日韩亚州综合| 中文字幕精品亚洲| 国产婷婷一区二区| 午夜少妇久久久久久久久| 亚洲女人天堂a在线播放| 欧美高清一区| 欧美日韩在线视频首页| 久本草在线中文字幕亚洲欧美| 日韩欧美国产1| 视频一区二区精品的福利| 精品久久久精品| 亚洲一级网站| 中文字幕 乱码 中文乱码91| 精品国产31久久久久久| 亚洲免费看av| 色综合天天性综合| 欧美一级久久| 欧美日韩免费高清| 国产裸体歌舞团一区二区| 在线观看精品国产| 国产一区免费视频| 亚洲欧美中文字幕在线观看| 91精品久久久久久久91蜜桃| 亚洲国产午夜精品| www.久久草| 日韩在线三区| 精品国产91乱高清在线观看| 日韩欧美在线视频日韩欧美在线视频| 免费视频一区三区| 一级日本免费的| 亚洲免费在线观看av| 国产日韩av高清| 另类专区欧美| av首页在线| 中文字幕亚洲在| 亚洲欧美日本另类| 亚洲三级国产| 在线精品观看| 国产一区不卡精品| 久久久综合精品| 亚洲a级在线播放观看| 国产福利不卡| 欧美 日韩 国产 在线| 欧美日韩亚洲第一| 91精品久久久久| 久草亚洲一区| 91精品在线视频观看| 一级片在线播放| 久久精品一级爱片| 日韩欧美视频一区二区三区四区| 欧洲精品在线一区| 高清1区2区| 日韩欧美在线网址| 国产欧美日韩在线播放| 精品极品三级久久久久| 在线看欧美日韩| 欧美日韩成人综合| 国产午夜在线观看| 精品国产99| 欧美亚洲视频在线看网址| 精品av中文字幕在线毛片| 日韩av一区二| 久久精品久久久久| 99中文字幕一区| 91精品国产综合久久精品app| 人妻一区二区三区免费| 欧美片网站免费| 日韩 欧美 综合| 日韩欧美国产不卡| 欧美日韩在线视频免费观看| 日韩在线 中文字幕| 日韩欧美在线第一页| 国产福利精品导航| 一区三区二区视频| av一区在线| 精品久久91| 日韩一级在线视频 | 91精品国产调教在线观看| 色屁屁一区二区| 欧美日韩高清| 免费看ww视频网站入口| 国产福利久久| 中文字幕日韩免费视频| 国产资源在线观看入口av| 日韩在线视频网| 欧美日韩精品三区| 久久99蜜桃精品| av手机天堂| 亚洲一区二区三区精品中文字幕| 一级片免费网站| 精品三级在线| 精品国产免费视频| 日韩欧美在线精品| 中文字幕精品在线| 91精品国产色综合久久不卡蜜臀| 亚州黄色一级| 国产一级片在线播放| 精品国产欧美日韩不卡在线观看 | 日韩精品视频在线观看网址| 亚洲欧美视频一区二区三区| 国产在线看一区| 91精品国产自产91精品| 国产香蕉精品视频| 日韩国产亚洲欧美| 国产一区久久| 91精品婷婷国产综合久久| 欧美日韩国产第一页| 热久久精品国产| 亚洲高清在线免费| 精品国产不卡一区二区| 99精品在线播放| 91精品国产综合久久香蕉最新版| 99久久精品国产亚洲| av中文网站| 日韩免费电影网站| www日韩欧美| 精品国产免费观看一区| 日韩欧美中文免费| 91精品视频免费在线观看| 国产小视频在线观看| 中文字幕久久精品| 粉嫩粉嫩芽的虎白女18在线视频| 国产黄在线观看免费观看不卡| 最近中文字幕在线中文视频| 在线欧美日韩国产| 免费精品国产自产拍观看| 国产婷婷色一区二区三区在线| 国产卡1卡2卡三卡在线| 亚洲乱码中文字幕综合|