C# 獲取時間是第幾周-在當年


 1 /// <summary>
 2         /// 獲取當前時間是當年的第幾周
 3         /// </summary>
 4         /// <param name="dt"></param>
 5         /// <returns></returns>
 6         public static int GetWeekIndexByYear(DateTime dt)
 7         {
 8             //當前時間當年的第一天
 9             DateTime time = Convert.ToDateTime(dt.ToString("yyyy") + "-01-01");
10             TimeSpan ts = dt - time;
11             //當年第一天是星期幾
12             int firstDayOfWeek = (int)time.DayOfWeek;
13             //獲取當前時間已過的總天數(四舍五入)
14             int day = int.Parse(ts.TotalDays.ToString("F0")) + 1;
15             //今年第一天星期日
16             if (firstDayOfWeek == 0)
17             {
18                 //總天數減1
19                 day--;
20             }
21             else
22             {
23                 //減去第一周的天數
24                 day = day - (7 - firstDayOfWeek + 1);
25             }
26             //當前日期的星期
27             int thisDayOfWeek = (int)dt.DayOfWeek;
28             //星期日直接減7天
29             if (thisDayOfWeek == 0)
30             {
31                 day = day - 7;
32             }
33             else
34             {
35                 day = day - thisDayOfWeek;
36             }
37             //第一個星期完整的7天+ 當前時間這個星期的7天 除以7
38             int week = (day + 7 + 7) / 7;
39             return week;
40         }
查看全部

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM