一、定义区别
System.IO命名空间
提供的文件操作类包含:File类和FileInfo类。
File类只包含静态方法,不能被实例化。
只要调用一个成员方法,提供合适文件系统对象的路径,就可以使用这些类。如果只对文件执行一个操作,使用这个类很有效,省去创建对象的系统开销。
FileInfo类,不是静态的,需要实例化。如果使用同一个对象执行多个操作,使用这些类比较有效。这是因为在构造时他们将读取合适文件系统对象的身份验证和其他信息,在调用每个方法时,相应的无状态类需要再次检查文件夹的详细内容。
二、实例
使用File类
File.Copy(filePath,newFilePath)。
使用FileInfo类
FileInfo fileinfo = new FileInfo();
fileinfo.CopyTo(newFilePath);
三、结论
1、文件执行几种操作时,使用FileInfo类更高效,因为File类每次都要寻找文件,耗费系统资源。
2、文件执行单一的方法,使用File类,因为不必实例化对象,省去创建对象的系统开销。