C#中Directory.GetFiles(string path , string searchPattern, SearchOption searchOption )
獲取path目錄中所有文件
注:紅色字體部分為可選參數
參數
- path
-
要搜索的目錄的相對或絕對路徑。此字符串不區分大小寫。
- searchPattern
-
要與 path 中的文件名匹配的搜索字符串。此參數可以包含有效文本路徑和通配符(* 和 ?)的組合(請參見“備注”),但不支持正則表達式。
searchPattern可以是文本和通配符的組合字符,但不支持正則表達式。在允許使用下面的通配符說明符searchPattern。
通配符說明符
匹配
* (星號)
在該位置的零個或多個字符。
?(問號)
在該位置的零個或一個字符。
- 詳情可參見:https://msdn.microsoft.com/zh-cn/library/ms143316(v=vs.110).aspx
- 經本人測試發現:
- "*.mat"可搜索到"box.mat"、"box.mat1"等格式的文件,但是搜索不到文件"box.mat.meta"
- searchOption
-
用於指定搜索操作是應包含所有子目錄還是僅包含當前目錄的枚舉值之一。
代碼如下:
using System; using System.Runtime.InteropServices; namespace System.IO { [ComVisible (true)] [Serializable] public enum SearchOption { TopDirectoryOnly, AllDirectories } }
SearchOption.TopDirectoryOnly 默認選項,僅包含當前目錄
SearchOption.AllDirectories 包含所有子目錄
1、path使用相對路徑
string path = "Assets/model";
string[] files = Directory.GetFiles(path) ;
可通過Directory.GetCurrentDirectory()查看當前路徑。
2、path使用絕對路徑
string path = "D:/UnityDemo/Assets/model"
string[] files = Directory.GetFiles(path)