从当前日期开始获得一周的一周,并指定一周的第一天



我正在将传统VB6项目迁移到C#。

我想从下面的表达式中获得c#中的等效物:

Weekday(Date, vbMonday)

我知道C#中有一个功能:

int dayOfWeek = (int)DateTime.Today.DayOfWeek;

但是如何指定一周的第一天是星期一,然后在周一运行Dayofeek考虑并返回正确的值?

我需要获得一个int值。

您可以通过致电CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek来获得一周的第一天,但我认为您可以不用。

就像DayOfWeek一样,Weekday函数返回1个星期一。唯一的特殊情况是星期日,.NET返回为0,而VB返回7。

只需进行数学:

int dayOfWeek = DateTime.Today.DayOfWeek == DayOfWeek.Sunday
                 ? 7
                 : (int)DateTime.Today.DayOfWeek;
DateTime dateValue = new DateTime(2008, 6, 11);

Console.WriteLine((int) dateValue.DayOfWeek);

//该示例显示以下输出://3

Console.WriteLine(dateValue.ToString("dddd"));

//该示例显示以下输出://wed

Console.WriteLine(dateValue.ToString("dddd"));

//该示例显示以下输出://星期三

相关内容

  • 没有找到相关文章

最新更新