2013-10-18 107 views
0

此代碼給我一個文件夾列表。沒有分類,它會首先出現。雖然我不認爲這是可以保證的(它可以根據文件名稱進行排序)。我想使用OrderBy或OrderByDescending函數根據創建日期對其進行最新排序。按創建日期排序DirectoryInfo

Dim di As New DirectoryInfo(root) 
folderList = di.GetDirectories() 

'does not work 
folderList.OrderByDescending(Function(x) x.CreationTime) 

謝謝

回答

3

您需要(重新)分配一個OrderByDescending返回變量,它不會責令原收藏價值。

例如:

folderList = folderList. 
    OrderByDescending(Function(x) x.CreationTime). 
    ToArray() 

另一種選擇是將原始數組進行排序:

Array.Sort(folderList, Function(d1, d2) d1.CreationTime.CompareTo(d2.CreationTime)) 

我使用this overload of Array.SortComparison(Of T)