簡體   English   中英

如何獲取按時間戳排序的目錄文件列表?

[英]How can I obtain a directory's file list sorted by timestamp?

我陷入了這種排序問題。

    Private Sub ...
        Dim oDirInfo As DirectoryInfo
        Dim aoFSInfo() As FileSystemInfo
        Dim asFiles() As String

FQPN是以“ \\ *。*”結尾的標准路徑名。

        oDirInfo = New DirectoryInfo(FQPN)

現在進入asFiles,我想要文件的名稱,按文件的時間戳以升序排序。 我認為, oDirInfo.CreationTime在這里起着作用,但無法弄清楚如何正確使用OrderBy

        aoFSInfo = oDirInfo.GetFileSystemInfos()    '?
        asFiles = aoFSInfo.OrderBy(...)
    End Sub

是的,那是LINQ,您可以使用以下(方法)語法:

asFiles = oFSInfo.
    OrderBy(Function(fsi) fsi.CreationTime).
    Select(Function(fsi) fsi.FullName).
    ToArray()

如果您不喜歡丑陋的Function關鍵字 ,則可以使用查詢語法:

Dim orderedFiles = From fsi In oFSInfo
                   Order by fsi.iCreationTime Ascending
                   Select fsi.FullName
asFiles = orderedFiles.ToArray()

即使這是兩個語句,由於執行延遲,它也不會比方法語法慢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM