CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

怎么获得下个星期一和星期五?

楼主fafenglea(光里光)2006-05-04 13:12:32 在 .NET技术 / ASP.NET 提问

怎么获得下个星期一和星期五?  
  如果给定一天,比如说2006-5-1,怎么获得该周是2006年的第几个周? 问题点数:10、回复次数:5Top

1 楼singlepine(小山)回复于 2006-05-04 13:42:02 得分 10

protected   void   Page_Load(object   sender,   EventArgs   e)  
  {  
  //获得该周是2006年的第几个周  
          DateTime   dt   =   Convert.ToDateTime("2006-05-01");  
          int   weeks   =   dt.DayOfYear   /   7   +   1;  
          Response.Write(weeks);  
           
          //获得下个星期一和星期五  
          DateTime   firstdate;  
          DateTime   lastdate;  
          DateTime   date   =   System.DateTime.Now;  
          ConvertDateToWeek(date,   out   firstdate,   out   lastdate);  
          Response.Write(firstdate   +   "   "   +   lastdate);  
  }  
  public   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(7);  
                          last   =   date.AddDays(12);  
                          break;  
                  case   System.DayOfWeek.Tuesday:  
                          first   =   date.AddDays(6);  
                          last   =   date.AddDays(11);  
                          break;  
                  case   System.DayOfWeek.Wednesday:  
                          first   =   date.AddDays(5);  
                          last   =   date.AddDays(10);  
                          break;  
                  case   System.DayOfWeek.Thursday:  
                          first   =   date.AddDays(4);  
                          last   =   date.AddDays(9);  
                          break;  
                  case   System.DayOfWeek.Friday:  
                          first   =   date.AddDays(3);  
                          last   =   date.AddDays(8);  
                          break;  
                  case   System.DayOfWeek.Saturday:  
                          first   =   date.AddDays(2);  
                          last   =   date.AddDays(7);  
                          break;  
                  case   System.DayOfWeek.Sunday:  
                          first   =   date.AddDays(1);  
                          last   =   date.AddDays(6);  
                          break;  
          }  
          firstdate   =   first;  
          lastdate   =   last;  
  }Top

2 楼johnny1983()回复于 2006-05-04 13:42:09 得分 0

mark&upTop

3 楼webwalker(Jason.Xu@BenQ.com)回复于 2006-05-04 13:57:13 得分 0

不要那么复杂吧Top

4 楼fafenglea(光里光)回复于 2006-05-04 14:11:17 得分 0

没有系统提供的函数吗?Top

5 楼ladOnTheBrinkOfRage(愤怒边缘的青年)回复于 2006-05-04 15:15:36 得分 0

Using   System.Globalization;  
  protected   int   GetWeekOfYear(DateTime   dt)  
  {  
  CultureInfo             ci   =     CultureInfo.CurrentCulture;  
  System.Globalization.Calendar             cal   =   ci.Calendar;  
  CalendarWeekRule   cwr   =   ci.DateTimeFormat.CalendarWeekRule;  
  DayOfWeek                 dow   =   ci.DateTimeFormat.FirstDayOfWeek;  
  return   cal.GetWeekOfYear(dt,   cwr,   dow);  
  }  
  Top

相关问题

关键词

得分解答快速导航

  • 帖主:fafenglea
  • singlepine

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo