找到目录中的最新文件

时间:2012-02-20 23:18:11

标签: vb.net getfiles

我正在尝试从目录加载最新文件,但我的以下代码不起作用。我有明显的错误吗?!

Dim myFile = Directory.GetFiles("C:\Users\Joe\Desktop\XML Logs").OrderByDescending(Function(f) f.LastWriteTime).First()

我收到两条错误消息:

  

无法从这些参数中推断出在“Public Function OrderByDescending(Of TKey)(keySelector As System.Func(Of String, TKey)) As System.Linq.IOrderedEnumerable(Of String)”中定义的扩展方法“System.Linq.Enumerable”中的类型参数的数据类型。明确指定数据类型可能会纠正此错误。

  

'LastWriteTime'不是'String'的成员。

2 个答案:

答案 0 :(得分:4)

Directory.GetFiles()返回String()

显然你的意思是DirectoryInfo.GetFiles()返回FileInfo()

答案 1 :(得分:4)

您可以使Linq函数使用FileInfo对象而不是字符串。

Dim myFile = Directory.GetFiles("C:\Users\Joe\Desktop\XMLLogs").OrderByDescending(Function(f) New FileInfo(f).LastWriteTime).First()