如何使用vb.net存储两天之间的所有日子

问题描述:

我需要在ARRAY中存储两个日期之间的所有日期。如何使用vb.net存储两天之间的所有日子

为如:

from_date is: 2014-09-20,to_date : 2014-09-24

结果将是

2014-09-20, 2014-09-21, 2014-09-22, 2014-09-23, 2014-09-24. 

任何帮助将不胜感激..

+0

你怎么得到两个日期值? – 2014-09-26 15:53:15

+0

昏暗fdate用作日期时间= DateTime.Parse(dtFrom.Text) 昏暗tdate作为日期时间= DateTime.Parse(dtTo.Text) 昏暗BtwDates作为字符串= “” 对于每个[日期]作为日期时间在GetDateRange( fdate,tdate) BtwDates + = [date] .ToString(“dd”)+“;” Next – Indrah 2014-09-26 15:55:00

+0

日期由用户从前端选择。 – Indrah 2014-09-26 15:57:27

方式一:LINQ

Dim days = From day In Enumerable.Range(0, (toDate - fromDate).Days + 1) 
      Select fromDate.AddDays(day) 
Dim result As Date() = days.ToArray() 

的经典方法没有数学也可以工作在.NET 2:

Dim dayList As New List(Of Date) 
Dim currentDate = fromDate 
While currentDate <= toDate 
    dayList.Add(currentDate) 
    currentDate = currentDate.AddDays(1) 
End While 
Dim result As Date() = dayList.ToArray() 

如果需要作为评价只是追加ToString()一个string()。例如:

Dim days = From day In Enumerable.Range(0, (toDate - fromDate).Days + 1) 
      Select fromDate.AddDays(day).ToString() 
Dim result As String() = days.ToArray() 
+0

我如何将它存储到字符串数组? – Indrah 2014-09-26 17:48:06

+0

只需在AddDays()后附加ToString()即可。但为什么你需要把它存储为错误的类型?当你显示它时,你应该只在最后阶段将它转换为一个字符串。 – 2014-09-26 18:54:06

+0

@Indrah:但是,我编辑了我的答案,告诉你如何。 – 2014-09-26 20:58:49