从嵌套目录中检索最后修改的文件名

时间:2014-01-24 09:09:53

标签: c# file file-management

我有一个根目录,里面有更多目录。这些目录包含各种Html和ncx文件。我必须得到上次修改过的文件的名称。 我正在使用此代码

    string filePath = @"~\FolderName\";  
string completeFilePath = Server.MapPath(filePath);  
var directory = new DirectoryInfo(completeFilePath);  
var fileName = (from f in directory.GetFiles()  
orderby f.LastWriteTime descending  
select f).First();  
lblDisplayFileName.Text=fileName.ToString();  

但它只搜索仅放在根目录中的文件。它不会搜索根目录目录中进一步存在的文件。我不知道如何获取嵌套目录中进一步存在的文件的最后修改文件名。我必须显示上次修改过的所有文件的文件名,而不管是否存在于任何目录中。

2 个答案:

答案 0 :(得分:0)

查看DirectoryInfo.GetFiles的文档:

MSDN

  

从当前目录返回文件列表

您必须使用overload that takes a SearchOption

directory.GetFiles("*.*", SearchOption.AllDirectories) 

答案 1 :(得分:0)

尝试GetFiles的重载,它带有2个参数

来自目录中的f的

.GetFiles(“”,SearchOption.AllDirectories)

SearchOption指定搜索操作是仅应包含当前目录还是所有子目录。