System.IO命名空间
![](https://www.cnblogs.com/images/cnblogs_com/dushouke/15.jpg)
从上面那张图可以看出Directory和File类型直接扩展了System.Object,而DirectoryInfo和FileInfo则是从FileSystemInfo抽象类派生的
System.IO里为什么更多的使用FileInfo (DirectoryInfo) 而不使用File ( Directory)这两对貌似双胞的两对兄弟,其功能上都是对文件进行一些常用操作(如打开,修改,删除等等),在园子里看到一篇文章,发现了一段能很好地说明以上问题的文字描述,其内容如下:
如果用户正试图对文件进行几种操作,可以使用FileInfo类。FileInfo类不包含静态的方法;因此,该类具有不同的用法。使用FileInfo类而不使用File类的原因在于,当创建一个FileInfo类,系统在第一次使用文件的时候要进行安全检查,而File类却在每次使用该方法的时候对文件进行一次安全检查。这是因为File类只有静态的方法,该方法无法确知对同一文件的多次访问。FileInfo类包含File类所有的功能,并且更多。但是因为FileInfo类的应用范围为一个指定的文件,因此在语法上略有不同。(相信DirectoryInfo也是同理)