13

我正在用 C# 编写一个包含大量 IO 操作的程序。其中一些操作是复制目录。

当我发现你在 C# 中没有像 Directory.copy(SourceDir, DestinationDir) 这样的东西时,我真的很震惊。

我用谷歌搜索了一下,在 msdn 上他们提供了一个代码示例来复制目录。(http://msdn.microsoft.com/en-us/library/bb762914.aspx)。但是,当您进一步搜索时,Microsoft.VisualBasic.FileIO 命名空间中有一个 Directory.Copy 方法。( http://msdn.microsoft.com/en-us/library/ms127957.aspx )

我可以参考这个命名空间并使用这个方法,但一定有微软在 C# 中不支持这个以及为什么他们没有在 msdn 上提及它的原因。

希望有人能告诉我原因。

我可以编写扩展方法来解决这个问题并且我可以很容易地解决它,但我的问题是为什么?为什么C#中没有这样的方法,我只想知道:-)

4

2 回答 2

5

foreach因为在 a上做 a 很容易DirectoryInfo.GetFiles(),同时也让你有机会过滤正在复制的文件列表,或者做一些除了复制之外的其他操作。

DirectoryInfo如果它真的困扰您,请为该类或FileInfo[]集合编写一个扩展方法。

于 2013-02-26T15:36:02.743 回答
2

我的猜测是 VB 更多地面向初学者,并且Microsoft.VisualBasic.FileIO旨在吸引他们进入 .NET 世界。

于 2013-02-26T15:40:17.790 回答