首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么计算指定时段算的所有周及周的时间段和星期几

2013-08-16 
如何计算指定时段算的所有周及周的时间段和星期几例如:开始时间:2013-07-01结束时间:2013-08-31想要的结果

如何计算指定时段算的所有周及周的时间段和星期几
例如:
开始时间:2013-07-01
结束时间:2013-08-31
想要的结果:
把这段时间内所有的周都列出来,如下所示,并指定当前系统时间的这个周为当前周。
第6周(13年08月05日-13年08月11日)



[解决办法]
这个用当前时间减去开始时间除以7应该就可以了…


DateTime dtStart = DateTime.Parse("2013-07-01");
DateTime dtEnd = DateTime.Parse("2013-08-31");
DateTime dtNow = DateTime.Now;
if (dtNow < dtEnd)
{
     TimeSpan ts = dtNow - dtStart;
     int week = ts.Days % 7 == 0 ? ts.Days / 7 : (ts.Days / 7) + 1;
     MessageBox.Show(days.ToString());
}
else
{
     MessageBox.Show("过期了");
}

[解决办法]
protected void Page_Load(object sender, EventArgs e)
        {
            DateTime beginDate = DateTime.Parse("2013-07-01"); 
            DateTime endDate = DateTime.Parse("2013-08-31");
            this.Label1.Text = getDateString(beginDate, endDate);
        }

        private string getDateString(DateTime beginDate, DateTime endDate)
        {
            if (beginDate < endDate)
            {
                int num = beginDate.DayOfYear % 7 == 0 ? beginDate.DayOfYear / 7 : beginDate.DayOfYear / 7 + 1;
                string str = "第" + num.ToString() + "周 " + beginDate.ToShortDateString() + " " + beginDate.AddDays(7).ToShortDateString() + "    ";


                str += getDateString(beginDate.AddDays(7), endDate);
                return str;
            }
            else
            {
                return "";
            }
        }
[解决办法]
给你一个获取当前周的开始日期和结束日期的小例子。


            //一周开始时间和结束时间
            DateTime dtWeekSt; 
            DateTime dtWeekEd;
            //当前日期
            DateTime dtNow = DateTime.Now.Date;
            //今天是星期几
            int iNowOfWeek = (int)dtNow.DayOfWeek;
            if (iNowOfWeek == 0)
            {
                //按中国的习惯,星期天是最后一天
                iNowOfWeek = 7;
            }
            dtWeekSt = dtNow.AddDays(1 - iNowOfWeek);
            dtWeekEd = dtNow.AddDays(7 - iNowOfWeek);



热点排行