如何在c#4.0中获取给定年份(int),给定月份(int)和给定周(int){示例年份:2011月份:07周:04}的开始和结束日期?提前致谢.
2011年07月的开始日期和月份的周数是04.
解决方法
Google是你的朋友.
月:
public DateTime FirstDayOfMonthFromDateTime(DateTime dateTime) { return new DateTime(dateTime.Year,dateTime.Month,1); } public DateTime LastDayOfMonthFromDateTime(DateTime dateTime) { DateTime firstDayOfTheMonth = new DateTime(dateTime.Year,1); return firstDayOfTheMonth.AddMonths(1).AddDays(-1); }
您可以多年来做类似的事情:
DateTime time = new DateTime(2011,1,1); time.AddYears(1).AddDays(-1);
week需要使用CultureInfo.FirstDay(或者你想要设置为一周的第一天,在某些国家是星期一,有时是星期天).
/// <summary> /// Returns the first day of the week that the specified /// date is in using the current culture. /// </summary> public static DateTime GetFirstDayOfWeek(DateTime dayInWeek) { CultureInfo defaultCultureInfo = CultureInfo.CurrentCulture; return GetFirstDateOfWeek(dayInWeek,defaultCultureInfo); } /// <summary> /// Returns the first day of the week that the specified date /// is in. /// </summary> public static DateTime GetFirstDayOfWeek(DateTime dayInWeek,CultureInfo cultureInfo) { DayOfWeek firstDay = cultureInfo.DateTimeFormat.FirstDayOfWeek; DateTime firstDayInWeek = dayInWeek.Date; while (firstDayInWeek.DayOfWeek != firstDay) firstDayInWeek = firstDayInWeek.AddDays(-1); return firstDayInWeek; }