我正在使用以下功能在C#程序中搜索文件:
static string[] getFiles(string path, string searchPattern, SearchOption searchOption)
{
string[] searchPatterns = searchPattern.Split('|');
List<string> files = new List<string>();
try
{
foreach (string sp in searchPatterns)
files.AddRange(Directory.GetFiles(path, sp, searchOption));
files.Sort();
} catch (Exception ex){ System.Windows.Forms.MessageBox.Show(ex.Message); }
return files.ToArray();
}
搜索文件时,将以下代码传递给函数:
var myDocuments = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
var files = getFiles(myDocuments, "*", SearchOption.AllDirectories);
现在,当我执行代码时,出现以下错误:
由于某种原因,它正在搜索文档/我的音乐,而不是C:\ Users \ Test \ Music。该错误发生在Win7上。我想问题的原因在以下链接中描述(甚至从未升级过Windows):Microsoft Document Changes。我的目的是搜索“我的文档”文件夹中的所有文件。这还包括搜索所有子目录,例如“我的音乐”,“我的图片”等。有人可以建议一些我可以使用的不同代码或解决此问题的解决方案吗?