您现在的位置是:首页 > 文章详情

C# 获取当前日期在一年中的第几个星期(使用GregorianCalendar.GetMonthsInYear)

会飞的猪2018-10-29133人围观
简介白码驿站是一个面向开发者的知识共享社区,专注于为开发者打造一个纯净的技术交流社区(源码下载,免费在线图片压缩,jquery插件,插件下载,JS/CSS在线压缩。)-白码驿站

        最近碰到一个这样的需求, 就是每家店铺一个星期只能申请一笔单子,然后我后台需要去判断是不是可以申请提交。其实实现起来也不是很麻烦, 不过那不是我要讲解的,我需要介绍的是GetMonthsInYear这个函数, 这个函数可以轻松获取 指定日期在一年中的第几周。

代码实现:

                                        
/// <summary>
/// 获取指定日期,在为一年中为第几周
/// </summary>
/// <param name="dt">指定时间</param>
/// <reutrn>返回第几周</reutrn>
private static int GetWeekOfYear(DateTime dt)
{
    GregorianCalendar gc = new GregorianCalendar();
    //DayOfWeek 视情况而定
    int weekOfYear = gc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Monday);
    return weekOfYear;
}
                                

这里顺便提一下 DayOfWeek.Monday 这个参数, 我觉得很有意思。 其实在不同地区,一星期的开始时间并不完全一致。许多英语国家、犹太教、日本、星期日,埃及人的一星期是从星期六开始的。多数欧洲国家都以星期一为一星期的第一天。而中国大陆习惯上也认为星期一是开始时间。  也就是说, 你做的是国外的项目, 你就需要考虑是不是 使用DayOfWeek.Monday了。

文章评论

Top

目录

昵称:会飞的猪

职业:.net程序员

邮箱:753109098@qq.com

分类标签

本栏推荐