1. 程式人生 > >根據開始日期和當前日期,獲取當前是第幾周

根據開始日期和當前日期,獲取當前是第幾周

 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 }