`
远去的渡口
  • 浏览: 473562 次
  • 性别: Icon_minigender_2
  • 来自: 上海转北京
社区版块
存档分类
最新评论

已经年,第x周,计算这周的开始日期与结束日期

 
阅读更多
2、	已知年,第x周,获取这一周的周日与周六日期(一周起始时间为周日)
/**
	 * 计算某年某周的开始日期
	 * @param yearNum
	 *            格式 yyyy ,必须大于1900年度 小于9999年
	 * @param weekNum
	 *            1到52或者53
	 * @return 日期,格式为yyyy-MM-dd
	 */
	public static String getYearWeekFirstDay(int yearNum, int weekNum) {

		Calendar cal = Calendar.getInstance();
		cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
		cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);// 每周从周一开始
		// 上面两句代码配合,才能实现,每年度的第一个周,是包含第一个星期一的那个周。
		cal.setMinimalDaysInFirstWeek(7); // 设置每周最少为7天
		cal.set(Calendar.YEAR, yearNum);
		cal.set(Calendar.WEEK_OF_YEAR, weekNum);

		// 分别取得当前日期的年、月、日
		return formatDate(cal.getTime());
	}
/**
	 * 计算某年某周的结束日期
	 * @param yearNum
	 *            格式 yyyy ,必须大于1900年度 小于9999年
	 * @param weekNum
	 *            1到52或者53
	 * @return 日期,格式为yyyy-MM-dd
	 */
	public static String getYearWeekEndDay(int yearNum, int weekNum) {

		Calendar cal = Calendar.getInstance();
		cal.setFirstDayOfWeek(Calendar.SUNDAY); // 设置每周的第一天为星期日
		cal.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);// 每周从周日开始,最后一天是周六
		cal.setMinimalDaysInFirstWeek(7); // 设置每周最少为7天
		cal.set(Calendar.YEAR, yearNum);
		cal.set(Calendar.WEEK_OF_YEAR, weekNum);

		return formatDate(cal.getTime());
	}

 

分享到:
评论
4 楼 远去的渡口 2011-07-27  
speed_guo 写道
远去的渡口 写道
speed_guo 写道
你好,很高兴再次看到你的文章,第一次看到是一年前,你的jfreeChart热点写得很好。看你的文章很清晰。

呵呵,谢谢赞美,听你这么说,我也很高兴哈,多多交流。

嗯,多多交流,女生做开发做得这么好我遇见的不多。

呵呵,过奖了,在上海时那位比我高一届的女同事比我强,只是女程序员确实少,哈
3 楼 speed_guo 2011-07-18  
远去的渡口 写道
speed_guo 写道
你好,很高兴再次看到你的文章,第一次看到是一年前,你的jfreeChart热点写得很好。看你的文章很清晰。

呵呵,谢谢赞美,听你这么说,我也很高兴哈,多多交流。

嗯,多多交流,女生做开发做得这么好我遇见的不多。
2 楼 远去的渡口 2011-07-01  
speed_guo 写道
你好,很高兴再次看到你的文章,第一次看到是一年前,你的jfreeChart热点写得很好。看你的文章很清晰。

呵呵,谢谢赞美,听你这么说,我也很高兴哈,多多交流。
1 楼 speed_guo 2011-06-22  
你好,很高兴再次看到你的文章,第一次看到是一年前,你的jfreeChart热点写得很好。看你的文章很清晰。

相关推荐

    有关日期与周数的相互转换

    - 首先计算出输入日期与该年1月1日之间的天数差。这可以通过计算两个日期的差值(可以使用编程语言中的日期函数,如Python的`dateutil.relativedelta`或JavaScript的`Date`对象)得到。 - 接下来,将这个天数差...

    android 日历控件 可选开始时间结束时间

    这包括绘制日期选择的界面,以及处理触摸事件,确保用户可以顺畅地选择开始和结束日期。 2. **日期选择逻辑**: 控件需要有机制来允许用户选择开始日期和结束日期,并确保结束日期不能早于开始日期。这通常需要通过...

    SQL日期查询大全

    - `DATEDIFF(mm, 0, GETDATE())`计算当前日期与1900年1月1日之间的月份差。 - `DATEADD(mm, x, date)`将x个月添加到指定日期date上。 - 最终结果是当前月份的第一天。 #### 二、获取当前周的第一天 **函数:** `...

    两日期计算差(除去双休)

    - 如果`in_week_day2 或`x >= 14`,则说明起始日期和结束日期不在同一周内。同样,需要考虑是否跨过周末,并进行相应的调整。 - 当`x 时,即没有跨越完整的一周: - 如果`in_week_day1 = 6`,则将`in_week_day1`...

    一次选择两个日期日历

    "一次选择两个日期日历"的功能是为用户提供一个便捷的方式,让他们能够同时选择开始日期和结束日期,类似于订房时选择"住店"和"离店"的日期。这个功能通常通过自定义的日历视图实现,以便与系统自带的日历控件有所...

    android 日期区间选择控件

    6. **封装与复用**:将这个自定义的日期区间选择组件封装成一个独立的库或者类,方便在其他项目中复用。同时,考虑提供接口,让外部可以轻松设置默认值、回调函数等。 在实际开发中,我们还可能遇到以下挑战: - *...

    Android 自定义日期选择框

    8. **兼容性**:确保自定义日期选择框在不同版本的Android系统上都能正常工作,这可能需要使用Support Library或者AndroidX库,以及针对低版本API的适配。 9. **性能优化**:在处理大量日期或者复杂动画时,注意...

    高级时间计算器 Advanced Date Time Calculator 9.1 Build 083 中文免费版.zip

    因此,它已经将开始日期和结束日期时间初始化为您当前的日期时间,只需更改一个日期时间以根据当前日期来计算过去/未来事件的年/月/周/日/小时/分钟/秒例如:你可以很快得到“你活着多少秒/天”。 统计两个日期之间...

    js 实现拖动层和获取自然周

    这个函数首先计算出指定日期是星期几,然后根据一周的起始日(默认为周一)调整日期,确保`startDate`是这一周的第一天,`endDate`是最后一天。 通过结合上述两种技术,开发者可以创建出交互性强且具有实用性的Web...

    DateFormatUtils时间获取及格式化工具类

    时间格式化及获取特殊时间工具类 ...计算前推或者后推x月的数据 将年月日时分秒转换为时分秒 获得两个月份之间字符串集合 获取当前时间的前n天(时间格式自定义格式) 将日期字符串转为指定格式的日期字符串

    js日期函数,很不错啊,可以让人点击得到日期

    根据提供的文件信息,我们可以归纳出以下几个关键的知识点: ### 1. JavaScript 日期函数扩展:字符串转日期 ...这对于开发人员来说是非常实用的功能集合,能够帮助快速实现与日期相关的应用需求。

    Calendar_java_prize48x_

    4. **时间选择器**:除了日期,用户还需要选择事件开始和结束的具体时间,这通常通过时间选择器控件完成。 5. **事件详情**:用户可以输入事件的详细信息,如地点、参与人员、备注等。 6. **存储与同步**:日程...

    自定义日期控件

    4. 范围选择:支持选择日期范围,如“开始日期”和“结束日期”。 5. 预设日期:设置默认值或预设选项,如“今天”、“昨天”、“明天”等。 6. 国际化:支持多语言环境,日期格式和星期名称随语言变化。 五、优化...

    js计算两个日期间的天数月的实例代码

    如果开始日期在结束日期之后,函数会返回错误消息。接着,它会检查两个日期是否在同一年内,如果是,就计算并返回年份差。如果月份不同,函数也会计算并返回月份数。对于天数,它没有像`dateU`函数那样精确地计算...

    安卓天气日历时间选择倒计时相关-Android例子源码可以一次性选择两个日期的自定义日历控件.rar

    在Android原生系统中,`DatePicker`只允许用户选择一个日期,但这个示例扩展了这一功能,让用户能够一次选择开始和结束日期。自定义控件通常需要重写父类的方法,调整布局,以及实现特定的交互逻辑,比如双指滑动...

    计算机二级accessVBA易错题44题(精).pdf

    这是一个自定义函数`f(x)`,它接受一个整数`x`并返回`x`与`y`的乘积。在事件处理程序中,`x`被赋值为20,`y`被赋值为2,然后`f(x)`被调用,返回值是`x*y`,即`40`。`f(x)`的值被赋给`y`,所以`y`变为40。答案是D,...

    android根据你出生的阳历日期可以判断你

    我们需要了解每个星座的起始和结束日期,然后判断用户生日是否落在某个区间内。例如,白羊座的日期范围是3月21日至4月19日,我们可以创建一个包含所有星座信息的映射,然后通过比较日期来查找对应的星座。 4. **...

    Excel2003函数应用完全手册

    - 参数包括成本、购买日期、第一期结束日期等。 5. **COUPDAYBS** - 计算结算日到最近付息日之间的天数。 - 参数包括结算日期、到期日期等。 6. **COUPDAYS** - 计算付息期间内的天数。 - 参数包括结算日期、...

    PMP考试中的6个计算题

    - **自由浮动时间**:一个任务可以在不影响其直接后续任务的最早开始日期的情况下延迟的最长时间。 2. **三点估算**: - 也称为PERT(Program Evaluation and Review Technique)估算,通过乐观的、最可能的和...

    Excel模板项目甘特图表x.zip

    甘特图是一种流行的时间管理工具,它通过条形图来显示项目的进度计划,帮助用户清晰地看到各个任务的开始日期、结束日期以及它们之间的关系。 在描述中,“Excel模板项目甘特图表x.zip”再次强调了这是一个用于项目...

Global site tag (gtag.js) - Google Analytics