System.IO.File和System.IO.FileInfo有什么区别?

3
为什么有两个类,System.IO.File和System.IO.FileInfo,它们的作用几乎相同?

2
希望你可以对评论进行踩。 - Rei Miyasaka
2
@Rei Miyasaka:为什么这样呢? - Mitch Wheat
1
因为你既不友善,也不乐于助人,更不幽默。 - Rei Miyasaka
可能是重复的问题?https://dev59.com/1XM_5IYBdhLWcg3wjj-r - andreyk2 Hohlov
2个回答

6

一般而言,它们有两个非常不同的功能:

  • System.IO.File - 获取/处理任何文件
  • System.IO.FileInto - 获取/处理(包括元数据)特定的文件

尽管它们共享一些具有相同目的的方法,但它们大多数情况下都具有非常不同的目的和服务的最佳场景。


5

System.IO.File 提供了与文件操作相关的静态成员,而System.IO.FileInfo则代表特定的文件并包含用于处理该文件的非静态成员。

来自 MSDN 的说明:

由于所有 File 方法都是静态的,如果您只想执行一个操作,使用 File 方法可能比相应的 FileInfo 实例方法更有效。所有 File 方法都需要您正在操作的文件的路径。

File 类的静态方法对所有方法执行安全检查。如果您要多次重复使用一个对象,请考虑使用 FileInfo 的相应实例方法,因为不一定始终需要进行安全检查。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接