java獲取日期的週數和所屬年份
阿新 • • 發佈:2019-02-10
在專案中遇到需要匯出excel表格 表格的標題需要根據資料來動態獲取
格式為 2017年第 50 周計劃檢修申報、實施確認表
獲取日期所屬週數
Date date = new Date();
Calendar cal = Calendar.getInstance();
cal.setFirstDayOfWeek(Calenar.MONDAY);//設定週一為一週的第一天
cal.setTime(date);
int num = cal.get(Calenar.WEEK_OF_YEAR);
calendar預設設定週日為第一天 需要通過setFirstDayOfWeek方法來設定 不然會導致週數錯誤
其中setFirstDayOfWeek傳入的是int引數
/**
* Value of the {@link #DAY_OF_WEEK} field indicating
* Sunday.
*/
public final static int SUNDAY = 1;
/**
* Value of the {@link #DAY_OF_WEEK} field indicating
* Monday.
*/
public final static int MONDAY = 2;
Calendar.MONDAY是常量2獲取日期所屬年份
直接使用Date.getYear()方法會導致獲取到一個三位數,而且該方法已經被廢棄,推薦使用calendar
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
String year = String.valueOf(calendar.get(Calendar.YEAR));