javacalendar获取第几周,java获取本周的开始时间和结束时间

发布时间:2023-01-08

本文目录一览:

1、java中如何获取日期时间中的星期几?
2、java 怎么根据第几年的第几周 获取那周周一的时期
3、java 获取当前日期是多少周
4、Java根据日期得到当月第几周
5、java给予一个日期算出当年的第几天以及第几周?

java中如何获取日期时间中的星期几?

1、取得指定日期是星期几 取得指定日期是星期几可以采用下面两种方式取得日期是星期几: a、使用Calendar类

//根据日期取得星期几
public static String getWeek(Date date){
    String[] weeks = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    int week_index = cal.get(Calendar.DAY_OF_WEEK) - 1;
    if(week_index < 0){
        week_index = 0;
    }
    return weeks[week_index];
}

b、使用SimpleDateFormat类

//根据日期取得星期几
public static String getWeek(Date date){
    SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
    String week = sdf.format(date);
    return week;
}

注:格式化字符串存在区分大小写
对于创建SimpleDateFormat传入的参数:

  • EEEE代表星期,如“星期四”;
  • MMMM代表中文月份,如“十一月”;
  • MM代表月份,如“11”;
  • yyyy代表年份,如“2010”;
  • dd代表天,如“25”。 2、取得日期是某年的第几周 根据日期取得日期是某年的第几周。
//取得日期是某年的第几周
public static int getWeekOfYear(Date date){
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);
    return week_of_year;
}

3、得到某年的某个月有多少天 已知年份和月份,取得该月有多少天。

//取得某个月有多少天
public static int getDaysOfMonth(int year, int month){
    Calendar cal = Calendar.getInstance();
    cal.set(Calendar.YEAR, year);
    cal.set(Calendar.MONTH, month - 1);
    int days_of_month = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
    return days_of_month;
}

4、取得两个日期之间的相差多少天 已知两个日期,计算它们之间相差多少天。

// 取得两个日期之间的相差多少天
public static long getDaysBetween(Date date0, Date date1) {
    long daysBetween = (date0.getTime() - date1.getTime() + 1000000) / 86400000; // 86400000=3600*24*1000 用立即数,减少乘法计算的开销
    return daysBetween;
}

java 怎么根据第几年的第几周 获取那周周一的时期

1、使用Calendar类。

Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2016); // 2016年
cal.set(Calendar.WEEK_OF_YEAR, 10); // 设置为2016年的第10周
cal.set(Calendar.DAY_OF_WEEK, 2); // 1表示周日,2表示周一,7表示周六
Date date = cal.getTime();

以上就能得到2016年第10周的周一的Date时间。 注:上面代码是手工敲的,没有放到eclipse中运行,有写错的地方请谅解

java 获取当前日期是多少周

使用Calendar类

/**
 * Calendar类中的.get(Calendar.DAY_OF_WEEK)可以获取当前日期是星期几
 * 获取当前日期是星期几
 *
 * @param dt
 * @return 当前日期是星期几
 */
public static String getWeekOfDate(Date dt) {
    String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
    Calendar cal = Calendar.getInstance();
    cal.setTime(dt);
    int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
    if (w < 0)
        w = 0;
    return weekDays[w];
}

Java根据日期得到当月第几周

Calendar c_begin = Calendar.getInstance();
Calendar c_end = Calendar.getInstance();
c_begin.set(2010, 3, 1); // Calendar的月从0-11,所以4月是3.
c_end.set(2010, 4, 20); // Calendar的月从0-11,所以5月是4.
int count = 0;
while(c_begin.before(c_end)){
    //System.out.println(new java.sql.Date(c_begin.getTime().getTime()));
    if(c_begin.get(Calendar.DAY_OF_WEEK)==Calendar.MONDAY){
        count++;
    }
    if(count == 2){
        System.out.println(c_begin.get(Calendar.YEAR)+"年"+(c_begin.get(Calendar.MONTH)+1)+"月"+c_begin.get(Calendar.DATE)+"日");
        break;
    }
    c_begin.add(Calendar.DAY_OF_YEAR, 1);
}

可以这样试试,应该能理解吧。如有不懂再问我

java给予一个日期算出当年的第几天以及第几周?

java中Calendar类中给出了求第几天第几周的方法的,所以直接引用即可。

Calendar ca = Calendar.getInstance(); // 创建一个日期实例
ca.setTime(new Date()); // 实例化一个日期
System.out.println(ca.get(Calendar.DAY_OF_YEAR)); // 获取是第多少天
System.out.println(ca.get(Calendar.WEEK_OF_YEAR)); // 获取是第几周

备注:此方法提供了很多方法,如查月,日等等。