【问题标题】:Searching and copying Sub Directories in C Sharp在 C Sharp 中搜索和复制子目录
【发布时间】:2011-10-04 08:34:38
【问题描述】:

我目前正在编写一个搜索“我的文档”的程序。目前我的程序能够搜索和复制我的文档主文件夹,但我无法让它在我的文档主目录中搜索子目录。我尝试了多种方法,但似乎都没有奏效。 目前我正在使用下面的代码将文件位置转储到一个名为 files 的数组中。 sourcePath 事先在数组中声明。

string[] files = System.IO.Directory.GetFiles(sourcePath[loopcounter]);

然后我有一个循环将文件复制到另一个目录

foreach (string s in files)

任何关于如何用文件夹的子目录中的文件详细信息填充数组文件的帮助都会非常方便。提前致谢!

【问题讨论】:

标签: c# search directory


【解决方案1】:

按模式使用研究并指定您要使用递归:

var allFiles = Directory.GetFiles(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),
                                 "*",
                                 SearchOption.AllDirectories);

foreach (var item in allFiles)
{
    // Do Stuff...
}

【讨论】:

  • 这段代码运行良好,我已经查看了其他贡献者发布的链接,但无论如何感谢。我唯一的问题是它似乎搜索到了目录树的远处?例如,在搜索我的图片(Environment.SpecialFolder.MyPictures)时,它想要搜索通过访问错误的我的音乐。 “我的图片”中没有指向“我的音乐”的快捷方式或链接,所以我不明白它为什么会这样做?甚至当 UAC 被提出并且程序以管理员身份运行时,也会发生相同的错误。任何帮助是极大的赞赏。谢谢!
【解决方案2】:

如果您想了解每个文件的详细信息,GetFiles 会为您返回名称数组。将每个名称传递给 FileInfo API。

【讨论】:

    猜你喜欢
    • 2010-12-27
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    • 2012-03-11
    • 2022-01-02
    • 2013-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多