我有当前日期,还有一个常数,它指示星期几。我想基于该常数获取一周的开始日期。如果我将一周的第一天硬编码为星期一(或其他任何东西),那么这很简单。但是一周的第一天一直在变化。因此,我不想在每次更改第一天时都更改代码。
这是我尝试使用Java的Calendar的方法:
public static Date getLastWeekdayDate()
{
Calendar calendar = new GregorianCalendar();
int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);
int daysToSubtractFromCurrentDate = 0;
switch (dayOfWeek)
{
case Calendar.WEDNESDAY:
daysToSubtractFromCurrentDate = 4;
break;
case Calendar.THURSDAY:
daysToSubtractFromCurrentDate = 5;
break;
case Calendar.FRIDAY:
daysToSubtractFromCurrentDate = 6;
break;
case Calendar.SATURDAY:
daysToSubtractFromCurrentDate = 0;
break;
case Calendar.SUNDAY:
daysToSubtractFromCurrentDate = 1;
break;
case Calendar.MONDAY:
daysToSubtractFromCurrentDate = 2;
break;
case Calendar.TUESDAY:
daysToSubtractFromCurrentDate = 3;
break;
}
calendar.add(Calendar.DATE, -daysToSubtractFromCurrentDate);
calendar.set(Calendar.AM_PM, Calendar.AM);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.HOUR, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar.getTime();
}
我想获取一周的开始日期。上面的函数返回星期的第一天,并且星期开始日期被硬编码为星期六。每当星期开始日期以上的要求发生变化时,我都必须更改代码。
我使用以下方法:
/** 1 = Sunday, 2 = Monday, 3 = Tuesday, 4 = Wednesday, 5 = Thursday,
* 6 = Friday, 7 = Saturday
*/
public static Date getFirstDayOfWeekDate(int firstDay)
{
// Calculate the date of the first day of the week
// First get the today's date
Calendar c = new GregorianCalendar();
// Now set the day of week to the first day of week
while (c.get(Calendar.DAY_OF_WEEK) != firstDay)
{
c.add(Calendar.DAY_OF_MONTH, -1);
}
return c.getTime();
}
问题内容: 如果可能的话,在以下情况下,我希望使用joda或非joda解决方案 假设我的一周从2012年5月2日开始,给定的当前日期为02/22/2011。我需要计算给定当前日期的星期开始和结束日期。因此,我的解决方案的星期应该从02/19开始,而星期在02/25结束。为简单起见,我将我的工作日设置为02/05/2011,但是可能是任何一天,我的工作日始终为7天。 我现有的代码如下,但似乎无法按预
问题内容: 我目前有此代码: 这是Date对象的扩展。 我需要做同样的事情,但是让日历返回我从星期一开始而不是星期日的一周中的几天。 问题答案: 您只需要使用iso8601日历获取一周中的第一天,其中第一个工作日为星期一,并添加0至6天。尝试这样:
问题内容: 如何获得当前一周的星期一和星期五的日期? 我有以下代码,但是如果当前日期是星期日或星期六,则它将失败。 问题答案: 这些strtotime输入效果很好: 您需要做的就是将逻辑包装在一些if语句中。
本文向大家介绍asp中获取日期为星期几的方法,包括了asp中获取日期为星期几的方法的使用技巧和注意事项,需要的朋友参考一下 测试代码如下,请使用IE运行本示例 WEEKDAY 用途:返回某日期的星期数。在默认情况下,它的值为1(星期天)到7(星期六)之间的一个整数。 Weekday是Visual Basic和VBS中的一个函数,功能返回代表一星期中某天的整数。 语法 参数 Weekday 函数的语
本文向大家介绍JavaScript获取当前日期是星期几的方法,包括了JavaScript获取当前日期是星期几的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript获取当前日期是星期几的方法。分享给大家供大家参考。具体如下: JavaScript获得当前日期是星期几,主要通过getDay函数获得当前日期是一个星期的第几天 希望本文所述对大家的javascript程序设计有
问题内容: 我想根据LocalDate.now()获取一周中第一天的日期。JodaTime可以进行以下操作,但似乎已从Java 8的新Date API中删除。 我无法调用“ withDayOfWeek()”,因为它不存在。 所以我的问题是: 如何根据某些LocalDate获取星期几的日期? 问题答案: 请注意,该表达式使用ISO-8601,因此它与语言环境无关,因此它总是向后跳到上一个星期一(或保