根據開始日期和當前日期,獲取當前是第幾周
阿新 • • 發佈:2018-11-28
1 /** 2 * 根據開始日期和當前日期,獲取當前是第幾周 3 * @param beginDateStr 開始日期 4 * @param endDateStr 當前日期 5 * @return 6 */ 7 public static long getDaySub(String beginDateStr,String endDateStr) 8 { 9 long day=0; 10 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");11 java.util.Date beginDate; 12 java.util.Date endDate; 13 try 14 { 15 //先判斷學期開始日期是星期幾 16 Calendar c = Calendar.getInstance();// 獲得一個日曆的例項 17 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); 18 c.setTime(sdf.parse(beginDateStr));19 String dayNames[] = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"}; 20 int dayNum[] = {6,0,1,2,3,4,5};//對應的星期幾和星期一倒推相差幾天 21 //算出的星期幾,和星期一差幾天就把開始時間多倒推幾天 22 c.add(Calendar.DATE, -dayNum[c.get(Calendar.DAY_OF_WEEK)-1]); 23 beginDate=c.getTime(); 24 //beginDate = format.parse(beginDateStr); 25 System.out.println(sdf.format(beginDate)); 26 endDate= format.parse(endDateStr); 27 day=(endDate.getTime()-beginDate.getTime())/(24*60*60*1000); 28 //System.out.println("相隔的天數="+day); 29 } catch (ParseException e) 30 { 31 // TODO 自動生成 catch 塊 32 e.printStackTrace(); 33 } 34 return day/7+1; 35 }