是否可以使用新的排除文件夹
Microsoft.VisualBasic.Devices.Computer().
FileSystem.CopyDirectory( sourceFolder, outputFolder );
这会将整个内容从源复制到目标,但是假设我不想复制某些文件夹,有没有办法排除这些。
使用 Reflector,代码中似乎没有任何公共(或私有)挂钩,CopyDirectory
以允许在复制时跳过某些文件夹或文件。
看起来您必须自己重做递归CreateDirectory
和CopyFile
循环,添加挂钩以检查跳过文件或文件夹的条件。
并注意Directory
andDirectoryInfo
EnumerateFiles
和EnumerateDirectories
重载(.NET Framework 4.0 的新功能)可能允许您通过模式匹配选择文件夹(或文件),否则使用 Linq。
另请注意,CopyDirectory
代码都在.NET 中Microsoft.VisualBasic
,因此不想包含该程序集/命名空间的 C# 爱好者已经不得不削减用于复制目录树的代码,因此您可能会发现一些只需要转换为 VB.NET 的示例.