c# - 为什么 System.IO.File 类是静态的

标签 c# .net file file-io

<分区>

我想知道为什么 File 类是静态的?

有些方法是静态的,比如Create。 但是,当我想移动文件时,我更愿意只指定新位置。这同样适用于CopyOpen 等。我猜这个问题已经在某个地方讨论过了,但是搜索没有给出任何结果,而是给出了为什么要创建静态方法的一般线索。

我并不是说 File 中的所有方法都不应该是静态的,但肯定有一些方法应该是实例相关的。

最佳答案

FileInfo具有实例方法的类 CopyToMoveTo .但是,如果您对文件执行单个操作,那么使用 File 的静态方法会更有效。类而不是创建实例 FileInfo 对象。如果您正在执行多项操作,那么创建 FileInfo 将允许跳过额外的安全检查。实际上 File 是一种操作文件的服务。也许类名不是最好的。

关于c# - 为什么 System.IO.File 类是静态的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20858832/

相关文章:

c# - 在客户环境中调试崩溃的后续步骤

c# - 在 C# 中运行程序时,所有消息都转到标准输出,但标准错误不包含任何内容

c# - 语义#region 用法

c# - SynchronizationContext - 奇怪的行为

c# - 数据集或数据表的 WriteXml 是否使用内存?

.net - 在 ASP.NET 中使用 session 的优点和缺点

C++ 将所有文件从一个目录移动到另一个目录

c - 没有写入c中的文件

Java:将数组写入文本文件

c# - 如何从 asp.net webform 中的 gridview 优化 "foreach"事件?