File
使用对象的静态方法与创建新FileInfo
对象并调用这些方法 有很大区别吗?
7 回答
唯一的区别是File
必须解析指定的路径(假设它是相对的),而FileInfo
应该已经有了解析的路径。
两人都在打电话Win32Native.DeleteFile()
这取决于。如果您正在执行单个操作,请使用File
该类,并且如果您正在对同一文件执行多个操作,请使用FileInfo
.
编辑:我提出这一点是因为我的理解是 File 类的静态方法将始终检查安全性。但是,如果您正在重用 FileInfo 的实例,则这些方法只会在第一次而不是在随后的每个调用中进行安全检查。
我希望这会帮助你...
IO.FileInfo
为文件的创建、复制、删除、移动和打开提供实例方法,并帮助创建System.IO.FileStream objects
. 这个类不能被继承。
这意味着,您需要创建 FileInfo 的实例/对象来完成此过程。
IO.File 为文件的创建、复制、删除、移动和打开提供静态方法,并帮助创建 System.IO.FileStream 对象。
这意味着,您无需创建 FileInfo 的实例/对象来完成此过程。
查看论文链接了解更多信息
http://msdn.microsoft.com/en-us/library/system.io.fileinfo.aspx
不,它们基本上是一样的。
不,它们是为了方便而重复的
几乎没有区别。如果文件存在则删除文件,如果文件不存在则抛出异常。