DirectoryInfo类和Directory类之间的关系与FileInfo类和File类之间的关系十分类似。下面介绍一下DirectoryInfo类的常用属性。

DirectoryInfo类的常用属性及说明如表所示。

表 DirectoryInfo类的常用属性及说明

属性 说明
Attributes  设置当前 FileSystemInfo 的 FileAttributes
CreationTime  设置当前 FileSystemInfo 对象的创建时间
Exists 获取指示目录是否存在的值
FullName  获取目录或文件的完整目录
Parent 获取指定子目录的父目录
Name 获取此 DirectoryInfo 实例的名称

下面对DirectoryInfo类中比较重要的属性进行详细介绍。

(1)CreationTime 属性

设置当前 FileSystemInfo 对象的创建时间。

语法:

public DateTime CreationTime { get; set; }

属性值:当前 FileSystemInfo 对象的创建日期和时间。

例如,获得F:\test\0000\目录下文件夹AA的创建日期和时间,首先将DirectoryInfo实例化,然后通过CreationTime属性得到此文件夹的创建日期和时间。代码如下所示:

string Paths = @"F:\test\0000\AA";

DirectoryInfo di = new DirectoryInfo(Paths);// 将DirectoryInfo实例化

string name = di.CreationTime.ToString();//通过CreationTime属性得到此文件夹的创建日期和时间

Label1.Text = "文件夹创建时间:"+name;

(2)Exists属性

判断指定的文件夹是否存在。

语法:

public override bool Exists { get; }

属性值:如果目录存在,则为 True;否则为 False。

例如,判断F:\test\0000\目录下是否存在名为ls的文件夹,首先要将DirectoryInfo实例化,然后通过Exists属性判断此文件夹是否存在,如果文件夹存在,返回值为True,否则为False。代码如下所示:

string Paths = @"F:\test\0000\AA";

DirectoryInfo di = new DirectoryInfo(Paths);

if (di.Exists)

{

Page.RegisterStartupScript("","<script>alert('该文件夹已经存在')</script>");

}

DirectoryInfo类的常用方法及说明如表所示。

表 DirectoryInfo类的常用方法及说明

方法 说明
Create 创建目录
CreateObjRef  创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息
CreateSubdirectory  在指定路径中创建一个或多个子目录。指定路径可以是相对于 DirectoryInfo 类的此实例的路径 
Delete  从路径中删除 DirectoryInfo 及其内容
Equals 确定两个 Object 实例是否相等
GetAccessControl  获取当前目录的访问控制列表 (ACL) 项 
GetDirectories  返回当前目录的子目录
GetFiles  返回当前目录的文件列表
GetFileSystemInfos 检索表示当前目录的文件和子目录的强类型 FileSystemInfo 对象的数组
GetHashCode 用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用 
GetLifetimeService 检索控制此实例的生存期策略的当前生存期服务对象 
GetObjectData 设置带有文件名和附加异常信息的 SerializationInfo 对象 
GetType  获取当前实例的 Type 
InitializeLifetimeService  获取控制此实例的生存期策略的生存期服务对象
MoveTo  将 DirectoryInfo 实例及其内容移动到新路径
ReferenceEquals  确定指定的 Object 实例是否是相同的实例
Refresh  刷新对象的状态 
SetAccessControl  将 DirectorySecurity 对象所描述的访问控制列表 (ACL) 项应用于当前 DirectoryInfo 对象所描述的目录
ToString 返回用户所传递的原始路径

下面对DirectoryInfo类中比较重要的方法进行详细介绍。

(1)Create方法

此方法可以方便的创建目录。

语法:

public void Create ()

例如,在D盘下创建名为AA的文件夹,首先要将DirectoryInfo类实例化,然后判断是否存在同名的文件夹,如果不存在,则使用Create方法创建目录。代码如下所示:

string path = "D:\\AA";

DirectoryInfo di = new DirectoryInfo(path);

if (!di.Exists)

{

di.Create();

}

else

{

Response.Write("此文件夹已经存在!");

}

(2)GetFileSystemInfos方法

返回表示某个目录中所有文件和子目录的强类型FileSystemInfo项的数组。

语法:

public FileSystemInfo[] GetFileSystemInfos ()

返回值:

强类型 FileSystemInfo 项的数组。

(3)MoveTo方法

将指定的内容移动到新路径。

语法:

public void MoveTo (string destDirName)

参数:

destDirName :要将此目录移动到的目标位置的名称和路径,目标不能是另一个具有相同名称的磁盘卷或目录。

(4)Delete方法

删除指定的文件夹。

语法:

public override void Delete ()

例如,删除D盘下名为AA的文件夹,首先将DirectoryInfo类实例化,然后判断是否存在此文件夹,如果存在则使用Delete方法删除此文件夹。

string path = "D:\\AA";

DirectoryInfo di = new DirectoryInfo(path);

if (di.Exists)

{

di. Delete();

}

else

{

Response.Write("不存在此文件夹!");

}

DirectoryInfo类的更多相关文章

  1. System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)

    一.建立的文件夹(对这些文件进行以上四个类的操作): 父目录: 父目录的子目录以及父目录下的文件: 子目录下的文件: 二.效果图 三.代码实现 using System; using System.I ...

  2. c# DirectoryInfo类 详解

    DirectoryInfo类和Directory类之间的关系与FileInfo类和File类之间的关系十分类似.下面介绍一下DirectoryInfo类的常用属性. DirectoryInfo类的常用 ...

  3. 文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类

    文件及文件夹操作: C/S:WinForm可以操作客户端文件 Client ServerB/S:Brower Server 命名空间:using system .IO; 1. File类: 创建:Fi ...

  4. c# DirectoryInfo 类和 FileInfo 类

    1.DirectoryInfo 类 DirectoryInfo 类派生自 FileSystemInfo 类.它提供了各种用于创建.移动.浏览目录和子目录的方法.该类不能被继承. 2.FileInfo ...

  5. FileInfo类和DirectoryInfo类

    FileInfo类和DirectoryInfo类可以方便地对文件和文件夹进行操作. 1. FileInfo类(非静态类) FileInfo类和File类之间许多方法调用都是相同的,但是FileInfo ...

  6. 文件夹操作-DirectoryInfo类

    DirectoryInfo类是一个密封类,它可以用来创建.移动.枚举目录和子目录.DirectoryInfo类包括4个属性,可以用来获取目录的名称.父目录等. DirectoryInfo类的属性表 属 ...

  7. C# 运用DirectoryInfo类和FileInfo类

    DirectoryInfo类和FileInfo类的基类都是FileSystemInfo类,这个类是一个抽象类,也就是说你不可以实例化该类,只能通过继承产生其子类并实例化其子类.然而你却可以运用由该类定 ...

  8. File类、FileInfo类、Directory类、DirectoryInfo类

    File类.Directory类,都是静态类,可以直接使用类名 FileInfo类.DirectoryInfo类,都是动态类,需要new对象,通过对象来操作 [文件的创建.复制.移动.删除]using ...

  9. Directory类和DirectoryInfo类

    1.Directory类 Directory类公开了用于创建.移动.枚举.删除目录和子目录的静态方法 2.DirectoryInfo类 DirectoryInfo和Directory类的区别可以参看F ...

随机推荐

  1. UIImage 调整图片大小

    -(UIImage *)scaleToSize:(UIImage *)img size:(CGSize)size { UIGraphicsBeginImageContext(size); [img d ...

  2. extjs form.load()加载服务端数据

    formPanel.getForm().load({ url: 'getApproveRefundInf?refundIdDetail=${refundIdDetail}', waitMsg: '请稍 ...

  3. calc 的使用

    通常情况下,一个元素节点使用固定定位absolute和固定定位fixed,会遇到一个问题,如果设置100% ,此时你在对他设置padding,border,margin,它就会撑满 具体情况如下图:

  4. 利用Xstream注解生成和解析xml

    实体类: @XStreamAlias("person") public class PersonBean {     @XStreamAlias("firstName&q ...

  5. 鼠标放上去,不同的cursor光标类型

    <!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf ...

  6. 3n+1问题

    猜想: 对于任意大于1的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半. 经过若干次这样的变换,一定会使n变为1.例如3->10->5->16->8->2-& ...

  7. PostgreSQL Replication之第九章 与pgpool一起工作(7)

    9.7 处理故障转移和高可用 可以使用pgpool来解决的一些明显的问题是高可用性和故障转移.一般来讲,有使用pgpool或者不使用pgpool可以用来处理这些问题的各种方法. 9.7.1 使用Pos ...

  8. 解决 linux [Fedora] 升级 导致VMware启动出现"before you can run vmware workstation, serveral modules must be complied and loaded into the runing kernel" 而无法卸载

    解决: 开机启动 进入 升级之前的内核系统 然后 执行卸载 VMware 命令 # vmware-uninstall You have gotten this message because you ...

  9. SQL面向对象抽象类

    抽象类:抽象类,只为继承而出现,不定义具体的内容,只规定该有哪些东西:一般抽象类中只放置抽象方法,只规定了返回类型和参数:例: 人 - 有吃饭,睡觉方法: 男人 - 继承人抽象类,必须实现吃饭,睡觉的 ...

  10. extjs4.0下的日期控件的星期显示为y的解决办法

    没有修改的时候的问题: 今天第一次写博客,就记录一下以前extjs4.2下运用日期组件的星期显示问题,当时找了n久,可能是extjs4.2才出来没多久,没有多少人发现这个问题或者说很少有人将Extjs ...