javaは現在の日付を計算します。今年の何週目と今週の開始日と終了日です。

1652 ワード

    //    Calendar  
    Calendar calendar = Calendar.getInstance();
    //              
    calendar.setFirstDayOfWeek(Calendar.MONDAY);
    //                 
    calendar.setMinimalDaysInFirstWeek(4);
    //      
    int weekYear = calendar.get(Calendar.YEAR);
    //              
    int weekOfYear = calendar.get(Calendar.WEEK_OF_YEAR);
    //     
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
    Date parse = null;
    try {
        parse = simpleDateFormat.parse("2019-12-31");
        System.out.println("2019-12-31       :" + parse);
    } catch (ParseException e) {
        e.printStackTrace();
    }
    calendar.setTime(parse);
    int weekOfYear1 = calendar.get(Calendar.WEEK_OF_YEAR);
    System.out.println("2019-12-31      " + weekOfYear1 + " ");
    Calendar c = new GregorianCalendar();
    //     2019-12-31 23:59:59
    c.set(2019, Calendar.DECEMBER, 31, 23, 59, 59);

    //              
    Integer weekOfYearLastWeek1 = c.get(Calendar.WEEK_OF_YEAR);
    System.out.println("       " + weekOfYearLastWeek1 + " ");
    //              (dayOfWeek         )
    calendar.setWeekDate(2019, 52, 2);
    //  Calendar   
    Date starttime = calendar.getTime();
    //              
    calendar.setWeekDate(2019, 52, 1);
    Date endtime = calendar.getTime();
    //            
    String dateStart = simpleDateFormat.format(starttime);
    String dateEnd = simpleDateFormat.format(endtime);
    System.out.println("2019  52       :" + dateStart);
    System.out.println("2019  52       :" + dateEnd);