簡體   English   中英

在vb.net中,如何基於逗號分隔的字符串從目錄中獲取文件?

[英]In vb.net, how do I get files from a directory based on a comma separated string?

我需要從文件夾中的文件創建一個array() 這是我如何獲取文件夾中所有文件的示例。

Dim filesList = New DirectoryInfo("MyPath").GetFiles("*", SearchOption.TopDirectoryOnly).Where(Function(f) Not f.Attributes.HasFlag(FileAttributes.Hidden)).[Select](Function(f) New AClassNameHere(f)).ToArray()

我想做完全相同的事情,但只獲取以逗號分隔的字符串中存在的文件。

Dim myFiles as String = "filename1.jpg,filename2.jpg,filename3.jpg"

您在哪里看到AClassNameHere是一個我需要將每個文件發送到的類,如果我知道如何發送有關每個文件的其他數據(例如文件的類型,大小等),那也將非常好。

非常感謝你!

您可以通過添加其他.Where()過濾器來縮小查詢結果的范圍

Dim myFiles as String = "filename1.jpg,filename2.jpg,filename3.jpg"
Dim filesList = New DirectoryInfo("MyPath")
                .GetFiles("*", SearchOption.TopDirectoryOnly)
                .Where(Function(f) Not f.Attributes.HasFlag(FileAttributes.Hidden))
                .Where(Function(f) myFiles.Contains(f.Name))
                .[Select](Function(f) New AClassNameHere(f)).ToArray()

更好的選擇是確保所有文件名都遵循模式。

New DirectoryInfo("MyPath").GetFiles("filename*.jpg", SearchOption.TopDirectoryOnly)

用這個...

    Dim Files() As String
    Files= filesList.Split(",")

    For each File In Files
    Msgbox(File)
    Next

暫無
暫無

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

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