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

|M| 算两个时间内有多少个星期 快帮一下,该如何处理

2012-03-03 
|M| 算两个时间内有多少个星期 快帮一下StartBookDayStartBookDay.AddDays(-(Int32)StartBookDay.DayOfWe

|M| 算两个时间内有多少个星期 快帮一下
StartBookDay   =   StartBookDay.AddDays(-(Int32)StartBookDay.DayOfWeek);
EndBookDay   =   EndBookDay.AddDays(+(7   -   (Int32)EndBookDay.DayOfWeek));
开始时间的星期最前一天
结束时间的星期最后一天
相除

但我这里星期定义的开始一天为   星期一   结束为   星期日

我要怎么写两个时间的星期数最为科学



[解决办法]
没什么问题呀。
因为按一个星期计算是一定有误差的。比如一个星期多3天你到底算几个星期?
反正只要保证两个时间是同单位就可以减。

至于误差和舍入怎么定义就要看实际需要了。
[解决办法]
同一年:
结果时间所在的周(一年中)-开始时间所在的周(一年中)

不同一年:
52-开始时间所在的周(一年中)+年差×52+结束时间所在的周(一年中)
[解决办法]
算出起始日期的下个周日的日期.算出结束日期的上周日的日期,这两个日期的星期数是整数.然后 +2 不重合 或者+1 重合一个日期或者+0 都不重合.
[解决办法]
查询当前周:

select * from table
where datediff(wk, 你的日期栏位, getdate())=0

[解决办法]
d
[解决办法]
select * from table
where datediff(wk, 你的日期栏位, getdate())=0

yes
[解决办法]
最好按自然周来确定

楼主的日期是从数据库取了再判断,还是不用数据库的数据?
[解决办法]
DateTime dt1 = DateTime.Parse( "2007-5-19 "); DateTime dt2 = DateTime.Now; DateTime dtfDay = dt1.AddDays(-1 * (int)dt1.DayOfWeek); DateTime dtlDay = dt2.AddDays(-1*(int)dt2.DayOfWeek);


int iWeeks = ((TimeSpan)(dtlDay - dtfDay)).Days / 7; if (dtlDay != dt2) { iWeeks++; } Response.Write(iWeeks.ToString());
[解决办法]
up
[解决办法]
不错

热点排行