C#中Directory.GetFiles() 函數的使用

C#Directory.GetFiles(string path , string searchPattern, SearchOption searchOption ) 正則表達式

獲取path目錄中全部文件express

注:紅色字體部分爲可選參數數組

參數

path

要搜索的目錄的相對或絕對路徑。此字符串不區分大小寫。app

searchPattern

要與 path 中的文件名匹配的搜索字符串。此參數能夠包含有效文本路徑和通配符(* 和 ?)的組合(請參見「備註」),但不支持正則表達式。測試

searchPattern能夠是文本和通配符的組合字符,但不支持正則表達式。在容許使用下面的通配符說明符searchPattern字體

通配符說明符ui

匹配spa

* (星號)3d

在該位置的零個或多個字符。code

?(問號)

在該位置的零個或一個字符。

   詳情可參見: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   包含全部子目錄

返回值

Type: System.String[]

指定目錄中與指定的搜索模式和選項匹配的文件的完整名稱(包含路徑)的數組;若是未找到任何文件,則爲空數組。

 

1path使用相對路徑

string path = "Assets/model";

string[] files = Directory.GetFiles(path) ;

可經過Directory.GetCurrentDirectory()查看當前路徑。

 

2path使用絕對路徑

string path = "D:/UnityDemo/Assets/model"

string[] files = Directory.GetFiles(path)

相關文章
相關標籤/搜索