如何获取当前系统时间的周一和周五,请教高手啊。谢谢拉。 如何获取当前系统时间的周一和周五 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你是要判断是否周一周五吧?DateTime.Now.DayOfWeek == DayOfWeek.Monday/Friday for (int i=0; i<7; i++){ Console.WriteLine(DateTime.Today.AddDays((i-(int)DateTime.Today.DayOfWeek)).ToShortDateString());}可以得到从周日到周六整整一周的日期要是从周一到周五就for (int i=1; i<6; i++)... 同意biliboy(我郁闷) DateTime.Now.DayOfWeek == DayOfWeek.Monday/Friday public static void ConvertDateToWeek(DateTime date,out DateTime firstdate,out DateTime lastdate){ DateTime first=System.DateTime.Now; DateTime last=System.DateTime.Now; switch (date.DayOfWeek) { case System.DayOfWeek.Monday: first=date.AddDays(-1); last=date.AddDays(5); break; case System.DayOfWeek.Tuesday: first=date.AddDays(-2); last=date.AddDays(4); break; case System.DayOfWeek.Wednesday: first=date.AddDays(-3); last=date.AddDays(3); break; case System.DayOfWeek.Thursday: first=date.AddDays(-4); last=date.AddDays(2); break; case System.DayOfWeek.Friday: first=date.AddDays(-5); last=date.AddDays(1); break; case System.DayOfWeek.Saturday: first=date.AddDays(-6); last=date; break; case System.DayOfWeek.Sunday: first=date; last=date.AddDays(6); break; } firstdate=first; lastdate=last;} string str=string.Empty;for(int i=0;i<7;i++){ switch (i) { case 0: str=System.DayOfWeek.Sunday.ToString(); weekday=CalendarBLLFacade.FormatDay(Convert.ToDateTime(firstdate)); break; case 1: str=System.DayOfWeek.Monday.ToString(); weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(1)); break; case 2: str=System.DayOfWeek.Tuesday.ToString(); weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(2)); break; case 3: str=System.DayOfWeek.Wednesday.ToString(); weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(3)); break; case 4: str=System.DayOfWeek.Thursday.ToString(); weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(4)); break; case 5: str=System.DayOfWeek.Friday.ToString(); weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(5)); break; case 6: str=System.DayOfWeek.Saturday.ToString(); weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(6)); break; } DataRow dr=ds.Tables[0].NewRow(); ds.Tables[0].Rows.InsertAt(dr,i); ds.Tables[0].Rows[i]["Week"]=str; ds.Tables[0].Rows[i]["weekday"]=weekday;} System.DateTime dtNow = System.DateTime.Now; System.TimeSpan tsMon = new TimeSpan( (int)(dtNow.DayOfWeek - System.DayOfWeek.Monday),0,0,0); System.TimeSpan tsFri = new TimeSpan( (int)(System.DayOfWeek.Friday - dtNow.DayOfWeek),0,0,0); System.Console.WriteLine ( "Monday is " + (dtNow - tsMon).ToString() ); System.Console.WriteLine ( "Today is " + dtNow.ToString() ); System.Console.WriteLine ( "Today is " + (dtNow + tsFri).ToString() ); 用存储过程实现:CREATE procedure getFirstLastWeekDay@currentDay datetime,--当前日期@firstDay datetime output ,--当前日期所在周的第一个工作日(周一)@lastDay datetime output --当前日期所在周的最后一个工作日(周五)asset datefirst 1 --设置一周的第一天是周一select @firstDay=dateadd(dd,datediff(dd,'1900-01-01',@currentDay) - datepart(dw , @currentDay) + 1 , '1900-01-01')select @lastDay=dateadd(dd,datediff(dd,'1900-01-01',@currentDay)+(5-datepart(dw,@currentDay)),'1900-01-01')print @firstDayprint @lastdayGO int t = (int)DateTime.Now.DayOfWeek; DateTime moday = DateTime.Now.AddDays(1-t); DateTime friday = DateTime.Now.AddDays(5-t); DateTime now = DateTime.Now; 关于内联属性编辑窗问题请教 请问如何实现持续发送UDP信息200ms,然后停止1000ms后再次发送,如此重复 是否可以手动绑定DataGridView对象的列 请教数据库连接问题 类似于gridview 但是一行可以放几条数据的控件? 对于学习C#应从什么地方入手 关于winform的datagrid控件只读列的背景色(在线等)。 菜单问题,高手帮忙啊 点击一个WINFORM按钮怎么打开一个Web页面啊? 如何在不同的FORM中进行控制? 寻下载C#电子书籍的地方,要免费的 发生类型为 System.StackOverflowException 的异常。
DateTime.Now.DayOfWeek == DayOfWeek.Monday/Friday
{
Console.WriteLine(DateTime.Today.AddDays((i-(int)DateTime.Today.DayOfWeek)).ToShortDateString());
}可以得到从周日到周六整整一周的日期
要是从周一到周五就
for (int i=1; i<6; i++)...
DateTime.Now.DayOfWeek == DayOfWeek.Monday/Friday
{
DateTime first=System.DateTime.Now;
DateTime last=System.DateTime.Now;
switch (date.DayOfWeek)
{
case System.DayOfWeek.Monday:
first=date.AddDays(-1);
last=date.AddDays(5);
break;
case System.DayOfWeek.Tuesday:
first=date.AddDays(-2);
last=date.AddDays(4);
break;
case System.DayOfWeek.Wednesday:
first=date.AddDays(-3);
last=date.AddDays(3);
break;
case System.DayOfWeek.Thursday:
first=date.AddDays(-4);
last=date.AddDays(2);
break;
case System.DayOfWeek.Friday:
first=date.AddDays(-5);
last=date.AddDays(1);
break;
case System.DayOfWeek.Saturday:
first=date.AddDays(-6);
last=date;
break;
case System.DayOfWeek.Sunday:
first=date;
last=date.AddDays(6);
break;
}
firstdate=first;
lastdate=last;
}
for(int i=0;i<7;i++)
{
switch (i)
{
case 0: str=System.DayOfWeek.Sunday.ToString();
weekday=CalendarBLLFacade.FormatDay(Convert.ToDateTime(firstdate));
break;
case 1:
str=System.DayOfWeek.Monday.ToString();
weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(1));
break;
case 2:
str=System.DayOfWeek.Tuesday.ToString();
weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(2));
break;
case 3:
str=System.DayOfWeek.Wednesday.ToString();
weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(3));
break;
case 4:
str=System.DayOfWeek.Thursday.ToString();
weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(4));
break;
case 5:
str=System.DayOfWeek.Friday.ToString();
weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(5));
break;
case 6:
str=System.DayOfWeek.Saturday.ToString();
weekday=CalendarBLLFacade.FormatDay(firstdate.AddDays(6));
break;
}
DataRow dr=ds.Tables[0].NewRow();
ds.Tables[0].Rows.InsertAt(dr,i);
ds.Tables[0].Rows[i]["Week"]=str;
ds.Tables[0].Rows[i]["weekday"]=weekday;
}
System.DateTime dtNow = System.DateTime.Now;
System.TimeSpan tsMon = new TimeSpan( (int)(dtNow.DayOfWeek - System.DayOfWeek.Monday),0,0,0);
System.TimeSpan tsFri = new TimeSpan( (int)(System.DayOfWeek.Friday - dtNow.DayOfWeek),0,0,0); System.Console.WriteLine ( "Monday is " + (dtNow - tsMon).ToString() );
System.Console.WriteLine ( "Today is " + dtNow.ToString() );
System.Console.WriteLine ( "Today is " + (dtNow + tsFri).ToString() );
CREATE procedure getFirstLastWeekDay
@currentDay datetime,--当前日期
@firstDay datetime output ,--当前日期所在周的第一个工作日(周一)
@lastDay datetime output --当前日期所在周的最后一个工作日(周五)
asset datefirst 1 --设置一周的第一天是周一select @firstDay=dateadd(dd,datediff(dd,'1900-01-01',@currentDay) - datepart(dw , @currentDay) + 1 , '1900-01-01')select @lastDay=dateadd(dd,datediff(dd,'1900-01-01',@currentDay)+(5-datepart(dw,@currentDay)),'1900-01-01')print @firstDay
print @lastday
GO
DateTime moday = DateTime.Now.AddDays(1-t);
DateTime friday = DateTime.Now.AddDays(5-t);
DateTime now = DateTime.Now;