美文网首页
跟据年月日 获取 周

跟据年月日 获取 周

作者: 吼吼吼dd | 来源:发表于2021-03-16 15:29 被阅读0次

    //跟据年月日获取周

    public static int getWeek(String date) {

    Calendar cal = Calendar.getInstance();//这一句必须要设置,否则美国认为第一天是周日,而我国认为是周一,对计算当期日期是第几周会有错误

        cal.setFirstDayOfWeek(Calendar.MONDAY);// 设置每周的第一天为星期一

        cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);// 每周从周一开始

        cal.setMinimalDaysInFirstWeek(7);// 设置每周最少为7天

        cal.setTime(getDate(date));

    int week = cal.get(Calendar.WEEK_OF_YEAR);

    return week;

    }

    跟据年 周 获取 时间

    private String getDateFromWeek(int yearc,int week,int isleft) {

    Calendar cal = Calendar.getInstance();//这一句必须要设置,否则美国认为第一天是周日,而我国认为是周一,对计算当期日期是第几周会有错误

        cal.setFirstDayOfWeek(Calendar.MONDAY);// 设置每周的第一天为星期一

        cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);// 每周从周一开始

        cal.setMinimalDaysInFirstWeek(7);// 设置每周最少为7天

        //跟据周获取 年月日

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {

    if (isleft ==0)

    cal.setWeekDate(yearc, week,2);//周第一天

    else cal.setWeekDate(yearc, week,1);//周的最后一天

    }

    int year = cal.get(Calendar.YEAR);

    int month = (cal.get(Calendar.MONTH)) +1;

    int day_of_month = cal.get(Calendar.DAY_OF_MONTH);

    return year +"-" + getMonthOrDay(month +"") +"-" + getMonthOrDay(day_of_month +"");

    }

    判断 2段日期是否有重复部分

    //判断时间是否有交叉

    public static Boolean checkTimesHasOverlap(Date dynaStartTime, Date dynaEndTime, Date fixedStartTime, Date fixedEndTime) {

    if (dynaStartTime.getTime() <= fixedStartTime.getTime() && dynaEndTime.getTime() >= fixedStartTime.getTime()) {

    return true;

    }else if (dynaStartTime.getTime() >= fixedStartTime.getTime() && dynaStartTime.getTime() <= fixedEndTime.getTime()) {

    return true;

    }else {

    return false;

    }

    }

    相关文章

      网友评论

          本文标题:跟据年月日 获取 周

          本文链接:https://www.haomeiwen.com/subject/sssdcltx.html