2014-09-26 69 views
1

我需要在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

回答

1

方式一: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

相關問題