標籤:建立時間 包含 nbsp pat font stat art 類方法 對象建立
1 DirectoryInfo 類介紹
DirectoryInfo 類在 .net 開發中主要用於建立、移動和枚舉目錄和子目錄的執行個體方法,此類不能被繼承。
從事 .net 軟體開發的同事對 DirectoryInfo 類應該都很熟悉,在開發過程中如果你打算多次重用某個對象,建議你使用 DirectoryInfo 的執行個體方法,而不是 Directory 類的方法,因為 Directory 類是靜態,在使用它的方法時每次都需要安全檢查,而 DirectoryInfo 類的方法則不需要安全檢查。
2 DirectoryInfo 類屬性
(1) Attributes:擷取或設定當前檔案或目錄的特性 。 (2) CreationTime:擷取或設定當前檔案或目錄的建立時間。 (3) CreationTimeUtc:擷取或設定當前檔案或目錄的建立時間,其格式為國際標準時間 (UTC)。 (4) Exists:擷取指示目錄是否存在的值。 (5) Extension:擷取表示副檔名部分的字串。 (6) FullName:擷取目錄或檔案的完整目錄。 .NET 4.5 版本 DirectoryInfo 新增屬性 (7) LastAccessTime:擷取或設定上次訪問當前檔案或目錄的時間 。 (8) LastAccessTimeUtc:擷取或設定上次訪問當前檔案或目錄的時間,其格式為國際標準時間 (UTC)。 (9) LastWriteTime:擷取或設定上次寫入當前檔案或目錄的時間。 (10) LastWriteTimeUtc:擷取或設定上次寫入當前檔案或目錄的時間,其格式為國際標準時間 (UTC)。
3 DirectoryInfo 類方法 (1) Create():建立目錄。 (2) Delete():如果此 DirectoryInfo 為空白,則刪除它。 (3) Create(DirectorySecurity):使用 DirectorySecurity 對象建立目錄。 (4) CreateObjRef:建立一個對象,該對象包含產生用於與遠程對象進行通訊的代理所需的全部相關資訊。 (5) CreateSubdirectory(String):在指定路徑中建立一個或多個子目錄 。指定路徑可以是相對於 DirectoryInfo 類的此執行個體的路徑。 (6) CreateSubdirectory(String, DirectorySecurity):使用指定的安全性在指定的路徑上建立一個或多個子目錄。指定路徑可以是相對於 DirectoryInfo 類的此執行個體的路徑。 (7) Delete() 如果此 DirectoryInfo 為空白,則刪除它 。
4 執行個體
4.1 建立 “收藏” 檔案夾
1 DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏");2 di.Create();
4.2 建立 “我的收藏.txt” 檔案
1 DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏\我的收藏.txt");2 di.Create();
4.3 刪除 “收藏” 檔案夾
1 DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏"); 2 di.Delete(true);
4.4 擷取子目錄和檔案
1 DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏"); 2 di.GetDirectories();
4.5 設定目錄屬性
1 DirectoryInfo di =new DirectoryInfo("E:\newFolder\收藏");2 di.Atttributes=FileAttributes.ReadOnly|FileAttributes.Hidden; //唯讀、隱藏
4.6 移動目錄或檔案
1 File.Move("E:\newFolder\收藏\a.txt","E:\newFolder\愛好");
4.7 擷取目錄下的檔案
1 Directory. GetFiles ("E:\newFolder\收藏");
4.8 判斷目錄是否存在
1 File.Exists("E:\newFolder\收藏");
4.9 複製目錄或檔案
1 File.Copy(source,target);
4.10 擷取檔案路徑中的檔案名稱
1 Path.GetFileName("E:\aa\bb\c.txt"); //結果:c.txt
4.11 擷取檔案路徑中的檔案名稱的父路徑
1 Path.GetDirectoryName("E:\aa\bb\c.txt"); //結果:E:\aa\bb\
4.12 讀取檔案
1 public static byte[] FileRead(System.IO.FileInfo file, long start, int packagesize) 2 { 3 byte[] resutl = null; 4 long length = start + packagesize; 5 using (System.IO.FileStream stream = file.OpenRead()) 6 { 7 if (length > stream.Length) //最後一部分不足packagesize 8 resutl = new byte[stream.Length - start]; 9 else10 resutl = new byte[packagesize];11 stream.Seek(start, System.IO.SeekOrigin.Begin);12 stream.Read(resutl, 0, resutl.Length);13 }14 return resutl;15 }
4.13 寫入檔案
1 public static void FileWrite(System.IO.FileInfo file, long start, byte[] data) 2 { 3 using (System.IO.FileStream stream = file.OpenWrite()) 4 { 5 stream.Seek(start, System.IO.SeekOrigin.Begin); 6 stream.Write(data, 0, data.Length); 7 stream.Flush(); 8 stream.Close(); 9 }10 }
C#學習之檔案操作