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


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   包含所有子目錄

返回值

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)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM