当前位置: 代码迷 >> ASP.NET >> 查询两个日期间的星期六(速度点多谢)
  详细解决方案

查询两个日期间的星期六(速度点多谢)

热度:4587   发布时间:2013-02-25 00:00:00.0
查询两个日期间的星期六(速度点谢谢)
就是两个时间 自己输入的 然后在 输入一个 星期六(或者其它的星期几) 然后搜索 出来这两个日期间的星期六(或者其它星期几)

------解决方案--------------------------------------------------------

C# code
   static void Main(string[] args)            {                DateTime beginDate = new DateTime(2012, 1, 1);                DateTime endDate = new DateTime(2012, 2, 1);                int showWeekOfDay = 6;  //这是要查询的出所有的周六                              beginDate = beginDate.AddDays(Math.Abs(showWeekOfDay - (Convert.ToInt32(beginDate.DayOfWeek))));                Console.WriteLine(beginDate);                do                {                    beginDate = beginDate.AddDays(7);                    Console.WriteLine(beginDate);                } while ((beginDate < endDate));                Console.ReadLine();            }
------解决方案--------------------------------------------------------
C# code
          DateTime dtStartTime = DateTime.Parse(txtStartTime2.Text);//开始时间            DateTime dtEndTime = DateTime.Parse(txtEndTime2.Text);//结束时间            TimeSpan tsCount = dtEndTime.Subtract(dtStartTime);//两时间之差            int intCount = int.Parse(tsCount.TotalDays.ToString()) + 1;           for (int i = 0; i < intCount; i++)            {                string weeks = dtStartTime.DayOfWeek.ToString();                //比较星期if(weeks=='...........').......                dtStartTime = dtStartTime.AddDays(1);//当前时间+一天            }//end for
------解决方案--------------------------------------------------------
探讨
C# code


static void Main(string[] args)
{
DateTime beginDate = new DateTime(2012, 1, 1);
DateTime endDate = new DateTime(2012, 2, 1);
……

------解决方案--------------------------------------------------------

这个方法周日是0,所有如果输入是7的话,把输入值7变成0

C# code
static void Main(string[] args)            {                DateTime beginDate = new DateTime(2012, 1, 1);                DateTime endDate = new DateTime(2012, 2, 1);                int showWeekOfDay = 6;  //这是要查询的出所有的周六                              beginDate = beginDate.AddDays(Math.Abs(showWeekOfDay - Convert.ToInt32(beginDate.DayOfWeek)));                Console.WriteLine(beginDate);                do                {                    beginDate = beginDate.AddDays(7);                    if (beginDate > endDate)                        break;                                        Console.WriteLine(beginDate);                } while (beginDate < endDate);                Console.ReadLine();            }
------解决方案--------------------------------------------------------
C# code
   Console.Write("请输入第一个时间:");            DateTime TimeStart = Convert.ToDateTime(Console.ReadLine());            Console.Write("请输入第二个时间:");            DateTime TimeLast = Convert.ToDateTime(Console.ReadLine());            int Subtraction =System.Math.Abs(int.Parse(TimeStart.Subtract(TimeLast).TotalDays.ToString()));            for (int i = 0; i <= Subtraction; i++)            {                if (TimeStart.AddDays(i).DayOfWeek.ToString().ToLower() == "saturday")                {                    Console.WriteLine("日期:"+TimeStart.AddDays(i).ToString()+"是星期六");                }            }            Console.ReadKey();
  相关解决方案