摘要
DirectoryInfo類是.NET Framework中System.IO命名空間中的一個(gè)重要類。它提供了對(duì)文件和目錄進(jìn)行操作的方法,包括創(chuàng)建,刪除和移動(dòng)目錄。
在.NET Framework中,目錄是指操作系統(tǒng)中的一個(gè)文件夾,可以包含多個(gè)子目錄和文件。DirectoryInfo類提供了一些靜態(tài)方法,如GetFiles和GetDirectories,用于訪問特定目錄下的文件和子目錄。
除了基本的目錄操作外,DirectoryInfo類還提供了許多其他方法,如CreateDirectory,Move和Delete,以及對(duì)于子目錄和文件的各種操作,如Copy和GetAttributes。
此外,DirectoryInfo類還提供了許多有用的屬性,如Name,F(xiàn)ullName和Attributes,這些屬性可以幫助我們獲取和修改目錄和子目錄的信息。
然而,需要注意的是,DirectoryInfo類是一個(gè)密封類,不能被繼承。這意味著,它的實(shí)現(xiàn)和行為是不可更改的,而我們只能使用它提供的方法來(lái)訪問和操作目錄。
DirectoryInfo類是一個(gè)非常有用的類,它提供了一組方便的方法和屬性,可以幫助我們管理文件和目錄。如果您需要在.NET Framework中處理目錄和子目錄,那么DirectoryInfo類將是您不可或缺的工具之一。
正文
構(gòu)造
構(gòu)造函數(shù) | 描述 |
---|
DirectoryInfo(String) | 它用于在指定的路徑上初始化DirectoryInfo 類的新實(shí)例。 |
屬性
屬性 | 描述 |
---|
Attributes | 它用于獲取或設(shè)置當(dāng)前文件或目錄的屬性。 |
CreationTime | 它用于獲取或設(shè)置當(dāng)前文件或目錄的創(chuàng)建時(shí)間。 |
CreationTimeUtc | 它用于在協(xié)調(diào)的世界時(shí)間(UTC)中獲取或設(shè)置創(chuàng)建時(shí)間。 |
Exists | 它用于獲取一個(gè)值,指示目錄是否存在。 |
Extension | 它用于獲取表示文件擴(kuò)展部分的字符串。 |
FullName | 它用于獲取目錄的完整路徑。 |
LastAccessTime | 它用于獲取或設(shè)置上次訪問當(dāng)前文件或目錄的時(shí)間。 |
LastAccessTimeUtc | 用于在當(dāng)前文件或目錄被上次訪問的協(xié)調(diào)世界時(shí)間(UTC)中獲取或設(shè)置時(shí)間。 |
LastWriteTime | 它用于獲取或設(shè)置當(dāng)前文件或目錄最后寫入的時(shí)間。 |
LastWriteTimeUtc | 當(dāng)最后一次寫入當(dāng)前文件或目錄時(shí),它用于在協(xié)調(diào)世界時(shí)(UTC)中獲取或設(shè)置時(shí)間。 |
Name | 它用于獲取此DirectoryInfo 實(shí)例的名稱。 |
Parent | 它用于獲取指定子目錄的父目錄。 |
Root | 它用于獲取目錄的根部分。 |
方法
方法 | 描述 |
---|
Create() | 它用于創(chuàng)建一個(gè)目錄。 |
Create(DirectorySecurity) | 它用于使用DirectorySecurity 對(duì)象創(chuàng)建目錄。 |
CreateObjRef(Type) | 它用于創(chuàng)建一個(gè)對(duì)象,其中包含生成用于與遠(yuǎn)程對(duì)象通信的代理所需的所有相關(guān)信息。 |
CreateSubdirectory(String) | 它用于在指定的路徑上創(chuàng)建一個(gè)子目錄或子目錄。 |
CreateSubdirectory(String,DirectorySecurity) | 它用于在具有指定安全性的指定路徑上創(chuàng)建子目錄或子目錄。 |
Delete() | 如果DirectoryInfo 為空,則用于刪除DirectoryInfo 。 |
Delete(Boolean) | 它用于刪除DirectoryInfo 的實(shí)例,指定是否刪除子目錄和文件。 |
EnumerateDirectories() | 它返回當(dāng)前目錄中可用的目錄信息集合。 |
EnumerateFiles() | 它在當(dāng)前目錄中返回?zé)o數(shù)的文件信息集合。 |
GetAccessControl() | 它用于獲取一個(gè)DirectorySecurity 對(duì)象,該對(duì)象封裝了目錄的訪問控制列表(ACL)條目。 |
GetDirectories() | 它返回當(dāng)前目錄的子目錄。 |
GetFiles() | 它從當(dāng)前目錄返回文件列表。 |
GetType() | 它用于獲取當(dāng)前實(shí)例的類型。 |
MoveTo(String) | 它用于將DirectoryInfo 實(shí)例及其內(nèi)容移動(dòng)到新路徑。 |
Refresh() | 它用于刷新對(duì)象的狀態(tài)。 |
SetAccessControl(DirectorySecurity) | 它用于設(shè)置DirectorySecurity 對(duì)象描述的訪問控制列表(ACL)條目。 |
ToString() | 它返回用戶傳遞的原始路徑。 |
創(chuàng)建目錄
private void btnCreateFolder_Click(object sender, EventArgs e)
{
DirectoryInfo dir = new DirectoryInfo("D:\\database1");
if (dir.Exists)
{
MessageBox.Show("找到目錄");
}
else
{
MessageBox.Show("沒有找到目錄");
dir.Create();//創(chuàng)建目錄
}
}
刪除文件
DirectoryInfo dir = new DirectoryInfo("D:\\database1");
dir.Delete();//刪除目錄,傳入true,將會(huì)刪除其下的所有目錄,文件
目錄下的文件與目錄
DirectoryInfo dir = new DirectoryInfo("D:\\database");
List<FileInfo> files = dir.GetFiles().ToList();
lstMain.DataSource = files;
DirectoryInfo dir = new DirectoryInfo("c:\\windows");
List<DirectoryInfo> dirs = dir.GetDirectories().ToList();
lstMain.DataSource = dirs;
注:Directory與DirectoryInfo基本一樣。
該文章在 2024/2/7 23:20:42 編輯過