Directory类和DirectoryInfo类的功能类似,主要功能如下。
1)实现基本的文件复制、移动、重命名、创建和删除等基本操作。
2)列举目录中的文件和子目录。
3)获取和设置目录信息,实现目录创建、访问和写入等操作相关的时间信息。
类Directory的主要方法信息如表14-4所示。
表14-4 类Directory方法信息
类DirectoryInfo的主要属性信息如表14-5所示。
表14-5 类DirectoryInfo属性信息
类DirectoryInfo的主要方法信息如表14-6所示。
表14-6 类DirectoryInfo方法信息
使用类Directory的方法和File的类似,因为所有的Directory类方法都是静态的,所以当只执行一个操作时,使用Directory方法的效率会高于使用DirectoryInfo实例方法的效率。看下面一段代码:
上述代码执行后,将会在E盘内创建一个名为“123.txt”的文件。
使用DirectoryInfo类的方法和使用FileInfo类的方法类似。在使用DirectoryInfo时,必须先构造DirectoryInfo实例,并传入当前操作目录的路径。如果在项目中需要多次重用某个对象,最好使用DirectoryInfo实例方法,而不使用Directory。看下面的一段代码:
执行后将会在E盘内检查是否存在名为“123”的文件夹,并输出对应的提示,如图14-2所示。(www.xing528.com)
图14-2 实例执行结果
如果在某个目录内存在多个文件或子目录,使用Directory和DirectoryInfo类将不能删除这个目录。下面通过一个具体实例来具体讲解解决上述限制的办法。
实例62:使用Directory和DirectoryInfo的方法和属性
本实例保存在“光盘:\daima\14”文件夹内,项目名为DirectoryDirectoryInfo。功能是使用Directory和DirectoryInfo的方法和属性,删除“e:\123”目录。其中“e:\123”目录下有三个子目录,如图14-3所示。
图14-3 “123”目录下的子目录
实例文件Program.cs的主要代码如下:
上述实例代码的设计流程如下。
1)定义变量dir,设置删除的目录是“e:\123”。
2)如果dir为空则输出提示。
3)通过FileInfo实例files获取目录中的文件。
4)通过foreach语句删除目录内的所有文件。
5)通过DirectoryInfo实例dirs,获取目录内的所有子目录。
6)通过foreach语句删除目录内的所有子目录。
7)当子目录和子文件删除完毕后,则将“e:\123”文件夹删除。
执行后首先默认显示控制台界面,按〈Enter〉键后将删除对应的子目录,删除完毕后退出控制台界面。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。