2011-06-29 96 views

回答

1

使用System.IO.DirectoryInfo可幫助最古老的文件夾。

具體關於CreationTime財產和EnumerateDirectories方法。

下面是使用LINQ的EnumerateDirectories方法的修改示例:

' Create a DirectoryInfo of the Program Files directory. 
Dim dirPrograms As New DirectoryInfo("c:\program files") 

' LINQ query for oldest directory 
Dim dir = (From dir In dirPrograms.EnumerateDirectories()).Min(function (o) o.CreationTime).FirstOrDefault() 

If Not IsNothing(dir) Then 
' perform rest of function 
End If 

這裏是一個非LINQ版本,以獲得一個文件夾中最目錄:

Dim di As New DirectoryInfo("C:\program files") 
    Dim dirs() as DirectoryInfo = di.GetDirectories() 
    Dim creationTime as DateTime = DateTime.Now 
    Dim oldestDir As DirectoryInfo 

    For Each dir As DirectoryInfo In dirs 
     If DateTime.Compare(dir.CreationTime(), creationTime) < 0 Then 
      oldestDir = dir 
      creationTime = dir.CreationTime() 
     End If 
    Next 
+0

@ash基本上,我的文件夾將在對方几小時內創建。有沒有什麼辦法可以說,'directory.lastmodifieddate.oldest刪除' – Kuzon

+0

@Kuzon我添加了一個非LINQ版本。據我所知,這是獲取目錄中最舊目錄的最佳方式。 –

+0

@Ash謝謝,我對Vb還是比較新的,我該如何解決我在這行上得到的錯誤'creationTime = f.CreationTime()'錯誤'f'沒有聲明。由於其保護級別,它可能無法訪問......我是否將其聲明爲一個字符串? – Kuzon

相關問題