zoukankan      html  css  js  c++  java
  • java获得当前日期是今年的第几周,以及这周的开始日期的方法

    直接上代码,备份使用        
    时间戳,长整型存储
                long startTime1 = 1530613938532l;
                Calendar calendar = Calendar.getInstance();
                calendar.setFirstDayOfWeek(Calendar.MONDAY);//设置星期一为一周开始的第一天
                calendar.setMinimalDaysInFirstWeek(4);//可以不用设置
                calendar.setTimeInMillis(System.currentTimeMillis());//获得当前的时间戳
                int weekYear = calendar.get(Calendar.YEAR);//获得当前的年
                int weekOfYear = calendar.get(Calendar.WEEK_OF_YEAR);//获得当前日期属于今年的第几周
                
                System.out.println("第几周:"+weekOfYear);
                calendar.setWeekDate(weekYear, weekOfYear, 2);//获得指定年的第几周的开始日期
                long starttime = calendar.getTime().getTime();//创建日期的时间该周的第一天,
                calendar.setWeekDate(weekYear, weekOfYear, 1);//获得指定年的第几周的结束日期
                long endtime = calendar.getTime().getTime();
                SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
                String dateStart = simpleDateFormat.format(starttime);//将时间戳格式化为指定格式
                String dateEnd = simpleDateFormat.format(endtime);
                System.out.println(dateStart);
                System.out.println(dateEnd);
     
     
    这个获取第几周的方法在跨年周上会出现问题
    上面这种方式用来获取指定日期的周开始日期和结束日期是可以的,用来判断当前日期属于第几周则不行
    参考资料:一年有几周 https://zhidao.baidu.com/question/490464213.html
     
    在中华人民共和国,包含1月4日的那个星期为当年的第一个星期
    链接:https://www.zhihu.com/question/33649214/answer/129104583
    依据:
    根据中华人民共和国国家标准GB/T 7408-2005《数据元和交换格式信息交换日期和时间表示法》中4.3.3.2部分:
    即一年中的第一个 日历星期包括该年的第一个星期四,并且日历年的最后一个日历星期就是在下一个日历年的第一个日历星期之前的那个星期,日历星期数是其在该年中的顺序。
    以及其注释:
    注 4:确定第1个日历星期的规则与规则“第一个 日历星期包含1月4日的星期”是等同的。
  • 相关阅读:
    VMware下桥接设置
    Silverlight 样式的灵活使用
    Silverlight网页打开后马上崩溃,“白屏”,而且毫无提示
    Silverlight中字典的使用
    WEBGIS网页崩溃问题分析
    MDB数据类型注意事项
    使用浏览器开发着工具查看地图或影响的请求信息
    ArcGIS出图调整
    启动aspx文件错误
    hdu3555(数位DP dfs/递推)
  • 原文地址:https://www.cnblogs.com/gne-hwz/p/9325415.html
Copyright © 2011-2022 走看看