C# 如何通过Directoryinfo获取最新文件的完整路径

C# 如何通过Directoryinfo获取最新文件的完整路径,c#,getfiles,directoryinfo,C#,Getfiles,Directoryinfo,我正在尝试在最新创建的文件夹中查找最新的.XML文件。我想这是一个简单的解决办法,但对我这个新手来说,这会让我的头发变白 我的代码: string dir = runfrom + @"\results"; string xml = "*.xml"; DirectoryInfo newestdir = new DirectoryInfo(dir).GetDirectories().OrderByDescending(d => d.LastWriteTimeUtc).F

我正在尝试在最新创建的文件夹中查找最新的.XML文件。我想这是一个简单的解决办法,但对我这个新手来说,这会让我的头发变白

我的代码:

    string dir = runfrom + @"\results";
    string xml = "*.xml";
    DirectoryInfo newestdir = new DirectoryInfo(dir).GetDirectories().OrderByDescending(d => d.LastWriteTimeUtc).First();
    var dirInfo = new DirectoryInfo(newestdir.ToString());
    var file = (from f in dirInfo.GetFiles(xml) orderby f.LastWriteTime descending select f).First();

dirinfo只包含最新目录的名称,但不包含完整路径。我(当然)遇到了一个错误,因为没有路径就找不到目录。

您可以使用
DirectoryInfo.FullName
获取完整路径

FullName-获取目录或文件的完整路径。(从 文件系统信息。)


但是,似乎不需要获取完整路径-您可以使用
DirectoryInfo
实例来枚举它的文件

DirectoryInfo newestdir = new DirectoryInfo(dir).GetDirectories().OrderByDescending(d => d.LastWriteTimeUtc).First();
var file = (from f in newestdir.GetFiles(xml) orderby f.LastWriteTime descending select f).First();

这看起来不像您尝试过的,所以您有一个runfrom,它是一个路径,然后您得到newestdir,它是该文件夹中的文件名。。那么从+newestdir+文件运行?更不用说查看directoryinfo选项NewESTDIR是一个文件夹,而不是文件。如果我建立了一个字符串,我就不能在上面使用getfiles。我已经试过了没有,但是当你想使用文件名的时候。。。。。。。。您可以选择使用directoryinfo来获取newestdir的全名,或者从+newesdir+文件中运行链……这正是我想要做的。非常感谢你!现在我可以用string full=dir++“\”+newestdir.ToString()++“\”+file.ToString()构建完整字符串;