摘要
DirectoryInfo类是System.IO命名空间的一部分。它用于创建,删除和移动目录。
它提供了执行与目录和子目录相关的操作的方法。这是一个密封的类,所以不能继承它。
正文
构造
构造函数 | 描述 |
DirectoryInfo(String) | 它用于在指定的路径上初始化DirectoryInfo类的新实例。 |
属性
属性 | 描述 |
Attributes | 它用于获取或设置当前文件或目录的属性。 |
CreationTime | 它用于获取或设置当前文件或目录的创建时间。 |
CreationTimeUtc | 它用于在协调的世界时间(UTC)中获取或设置创建时间。 |
Exists | 它用于获取一个值,指示目录是否存在。 |
Extension | 它用于获取表示文件扩展部分的字符串。 |
FullName | 它用于获取目录的完整路径。 |
LastAccessTime | 它用于获取或设置上次访问当前文件或目录的时间。 |
LastAccessTimeUtc | 用于在当前文件或目录被上次访问的协调世界时间(UTC)中获取或设置时间。 |
LastWriteTime | 它用于获取或设置当前文件或目录最后写入的时间。 |
LastWriteTimeUtc | 当最后一次写入当前文件或目录时,它用于在协调世界时(UTC)中获取或设置时间。 |
Name | 它用于获取此DirectoryInfo实例的名称。 |
Parent | 它用于获取指定子目录的父目录。 |
Root | 它用于获取目录的根部分。 |
方法
方法 | 描述 |
Create() | 它用于创建一个目录。 |
Create(DirectorySecurity) | 它用于使用DirectorySecurity对象创建目录。 |
CreateObjRef(Type) | 它用于创建一个对象,其中包含生成用于与远程对象通信的代理所需的所有相关信息。 |
CreateSubdirectory(String) | 它用于在指定的路径上创建一个子目录或子目录。 |
CreateSubdirectory(String,DirectorySecurity) | 它用于在具有指定安全性的指定路径上创建子目录或子目录。 |
Delete() | 如果DirectoryInfo为空,则用于删除DirectoryInfo。 |
Delete(Boolean) | 它用于删除DirectoryInfo的实例,指定是否删除子目录和文件。 |
EnumerateDirectories() | 它返回当前目录中可用的目录信息集合。 |
EnumerateFiles() | 它在当前目录中返回无数的文件信息集合。 |
GetAccessControl() | 它用于获取一个DirectorySecurity对象,该对象封装了目录的访问控制列表(ACL)条目。 |
GetDirectories() | 它返回当前目录的子目录。 |
GetFiles() | 它从当前目录返回文件列表。 |
GetType() | 它用于获取当前实例的类型。 |
MoveTo(String) | 它用于将DirectoryInfo实例及其内容移动到新路径。 |
Refresh() | 它用于刷新对象的状态。 |
SetAccessControl(DirectorySecurity) | 它用于设置DirectorySecurity对象描述的访问控制列表(ACL)条目。 |
ToString() | 它返回用户传递的原始路径。 |
创建目录
private void btnCreateFolder_Click(object sender, EventArgs e)
{
DirectoryInfo dir = new DirectoryInfo("D:\\database1");
if (dir.Exists)
{
MessageBox.Show("找到目录");
}
else
{
MessageBox.Show("没有找到目录");
dir.Create();//创建目录
}
}
删除文件
DirectoryInfo dir = new DirectoryInfo("D:\\database1");
dir.Delete();//删除目录,传入true,将会删除其下的所有目录,文件
目录下的文件与目录
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基本一样。