当前位置: 代码迷 >> C# >> 怎么实现获得时间间隔范围内所有的日期
  详细解决方案

怎么实现获得时间间隔范围内所有的日期

热度:469   发布时间:2016-05-05 05:19:20.0
如何实现获得时间间隔范围内所有的日期
我想实现这样的一个方法:
private static List<string> GetAllDateList(String strStart, String strEnd)
{
}
通过传入开始时间和结束时间获得期间所有日期并将日期文本加入到返回值List中,比如传入2015-02-27和2015-03-03,则List可以获得的结果应该是:
2015-02-27
2015-02-28
2015-03-01
2015-03-02
2015-03-03
这几个字符串都放到List中返回。
由于可能判断平年闰年,我有些糊涂,请高手指点。

------解决思路----------------------
TimeSpan st = dt1-dt2;
然后得到st中的间隔的天数
for(i=1;i<=st.Days;i++)
{
DateTime newDate = dt2.AddDays(i);
}
------解决思路----------------------
我一个很没创意的思路

先把strStart和strEnd都转换成DateTime格式

List<string> result = new List<string>();
DateTime tempDate = dateStart;
while(tempDate <= dateEnd)
{
    string strDate = string.Format("{0}-{1}-{2}", tempDate.Year, tempDate.Month, tempDate.Day);
    result.Add(strDate);
    tempDate.AddDays(1);
}

------解决思路----------------------

引用:
TimeSpan st = dt1-dt2;
然后得到st中的间隔的天数
for(i=1;i<=st.Days;i++)
{
DateTime newDate = dt2.AddDays(i);
}

斑竹好办法。
使用系统自带的Datetime类型处理即可,不需要自己判断平年闰年。

如果是自己实现一个函数,才要搞这些~~
  相关解决方案