手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#由当前日期计算相应的周一和周日的实例代码
C#由当前日期计算相应的周一和周日的实例代码
摘要:复制代码代码如下://////计算本周起始日期(礼拜一的日期)//////该周中任意一天///返回礼拜一日期,后面的具体时、分、秒和传入值相...

复制代码 代码如下:

/// <summary>

/// 计算本周起始日期(礼拜一的日期)

/// </summary>

/// <param name="someDate">该周中任意一天</param>

/// <returns>返回礼拜一日期,后面的具体时、分、秒和传入值相等</returns>

public static DateTime CalculateFirstDateOfWeek(DateTime someDate)

{

int i = someDate.DayOfWeek - DayOfWeek.Monday;

if (i == -1) i = 6;// i值 > = 0 ,因为枚举原因,Sunday排在最前,此时Sunday-Monday=-1,必须+7=6。

TimeSpan ts = new TimeSpan(i, 0, 0, 0);

return someDate.Subtract(ts);

}

/**//// <summary>

/// 计算本周结束日期(礼拜日的日期)

/// </summary>

/// <param name="someDate">该周中任意一天</param>

/// <returns>返回礼拜日日期,后面的具体时、分、秒和传入值相等</returns>

public static DateTime CalculateLastDateOfWeek(DateTime someDate)

{

int i = someDate.DayOfWeek - DayOfWeek.Sunday;

if(i != 0) i = 7 - i;// 因为枚举原因,Sunday排在最前,相减间隔要被7减。

TimeSpan ts = new TimeSpan(i, 0, 0, 0);

return someDate.Add(ts);

}

/**//// <summary>

/// 判断选择的日期是否是本周(根据系统当前时间决定的‘本周'比较而言)

/// </summary>

/// <param name="someDate"></param>

/// <returns></returns>

public static bool IsThisWeek(DateTime someDate)

{

//得到someDate对应的周一

DateTime someMon = CalculateFirstDateOfWeek(someDate);

//得到本周一

DateTime nowMon = CalculateFirstDateOfWeek(DateTime.Now);

TimeSpan ts = someMon - nowMon;

if (ts.Days < 0)

ts = -ts;//取正

if (ts.Days >= 7)

{

return false;

}

else

{

return true;

}

}

【C#由当前日期计算相应的周一和周日的实例代码】相关文章:

c#图片添加水印的实例代码

C#仿密保卡功能的简单实现代码

C#索引器简单实例代码

c# 图片加密解密的实例代码

C# 手动/自动保存图片的实例代码

C#数据结构之循环链表的实例代码

C#求解哈夫曼树,实例代码

C# char类型字符转换大小写的实现代码

C#中调用命令行cmd开启wifi热点的实例代码

C#动态执行字符串(动态创建代码)的实例代码

精品推荐
分类导航