java实现iso的周数计算
2016-01-04 13:30
435 查看
<span style="color: rgb(153, 153, 153); font-family: 'microsoft yahei'; font-size: 13.3400001525879px;">现在流行的my97的js插件,其使用的的日期计算方式的java代码实现,输入需要计算的日期,返回计算出来的年-周数目以每周的周一为1周的开始。如有雷同,请及时联系本人。</span>
private SimpleDateFormat df_yyyyMMdd = new SimpleDateFormat("yyyy-MM-dd"); public String getWeekYear(String today) throws ParseException { Date date = df_yyyyMMdd.parse(today); Calendar calendar = Calendar.getInstance(); calendar.setFirstDayOfWeek(Calendar.MONDAY); calendar.setTime(date); //先处理第一周从几号开始的问题 Calendar cl = Calendar.getInstance();//计算一年开始周的情况 cl.setFirstDayOfWeek(Calendar.MONDAY); cl.setTime(df_yyyyMMdd.parse(cl.get(Calendar.YEAR)+"-01"+"-"+cl.getMinimalDaysInFirstWeek())); System.out.println(cl.getTime()+"-------"+cl.get(Calendar.DAY_OF_WEEK)); //判断如果大于5的话每年的第一周开始的号数推迟到下一周,现在开始计算下一周的开始天数 String startDate=getFristDate_Week(cl.get(Calendar.YEAR),2); if(cl.get(Calendar.DAY_OF_WEEK)>=6){ calendar.setMinimalDaysInFirstWeek(Integer.valueOf(startDate.split("-")[2])); } return calendar.get(Calendar.YEAR)+"-"+calendar.get(Calendar.WEEK_OF_YEAR); } /** * 通过此方法返回对应周的第一天(以周一为开始时间) * * @param year * @param weekNO * @return */ public String getFristDate_Week(Integer year, Integer weekNO) { Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, year); cal.set(Calendar.WEEK_OF_YEAR, weekNO); cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); return df_yyyyMMdd.format(cal.getTime()); }
[/code]
相关文章推荐
- Java中的各种加密算法
- Eclipse中java的JVM设置
- Java Base64编码与MD5数字摘要算法
- -Djava.library.path
- java反射详解
- Windows配置JDK环境
- Java——基本语法
- eclipse插件egit安装使用
- Eclipse中如何清除EGit记住的GitHub用户名和密码
- (转)java中String的常见用法
- JavaWeb四个域
- java spring mvc 上传
- Java数字相关
- Java-Blob-取出来插入另一个数据库[导库程序]
- Java多线程碎碎念
- Spring定时任务的几种实现
- android studio项目如何导入到eclipse中
- Eclipse打开时“发现了以元素'd:skin'”开头的无效内容。此处不应含有子元素的解决方法
- eclipse最有用快捷键整理 by 戎码一生
- Struts2 集成 sitemesh配置