如果我像那样使用正常方式,我可以获得周数。如您所知,此计算器根据正常开始日期(即 2015 年 1 月 1 日)计算周数。
CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(mydate, CultureInfo.CurrentCulture.DateTimeFormat.CalendarWeekRule, CultureInfo.CurrentCulture.DateTimeFormat.FirstDayOfWeek)
但我想更改开始日期。例如,我一年中的第一周是 2015 年 7 月 1 日,根据该日期,我想计算给定日期的一年中的第几周。
最佳答案
从 date
对象中减去新年和开始日期之间的差异
var startDate = new DateTime(2015, 7, 1);
var newYear = new DateTime(2015, 1, 1);
var culture = CultureInfo.CurrentCulture;
var weekOfYear = culture.Calendar.GetWeekOfYear(
mydate.Add(newYear - startDate),
culture.DateTimeFormat.CalendarWeekRule,
culture.DateTimeFormat.FirstDayOfWeek);
关于c# - 获取不同开始日期的周数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31126437/