C# 获取时间是第几周-在当年
标签:click dex 星期几 one std 一周 param get str
1 ///
2 /// 获取当前时间是当年的第几周
3 ///
4 ///
5 ///
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 }
查看全部
C# 获取时间是第几周-在当年
标签:click dex 星期几 one std 一周 param get str
原文地址:https://www.cnblogs.com/developerlu/p/12425772.html
评论