using System.IO;
public static void Main()
{
DirectoryInfo di = new DirectoryInfo("c:\\temp\\");
FileSystemInfo[] files = di.GetFileSystemInfos("*.mp3");
printFiles(files);
Array.Sort(files, CompareFileByDate);
printFiles(files);
}
public static int CompareFileByDate(FileSystemInfo f1, FileSystemInfo f2)
{
return DateTime.Compare(f1.LastWriteTime, f2.LastWriteTime);
}
public static void printFiles(FileSystemInfo[] files)
{
foreach(FileSystemInfo file in files)
{
Console.WriteLine(file.Name);
}
Console.WriteLine("********************************");
}
看看这可以帮助您在所有。
我用LastWriteTime
属性。您可以选择任何一个为你的作品(CreationTime
或LastAccessTime
)
编辑:当然,这可以转换为使用C#3.0 & lambda表达式的支持更紧凑的语法
EDIT2:
from file in new DirectoryInfo(@"c:\temp\").GetFileSystemInfos("*.mp3")
orderby file.LastWriteTime
select file
EDIT3:上面的C#代码
from file in new DirectoryInfo("c:\temp\").GetFileSystemInfos("*.mp3") _
order by file.LastWriteTime _
select file
EDIT4的vb.net版:这是你在找什么?
这会给你最大的。所有* .mp3文件的LastWriteTime的日期。
(from file in new DirectoryInfo("c:\temp\").GetFileSystemInfos("*.mp3") _
order by file.LastWriteTime descending _
select file.LastWriteTime).Take(1)
OR
(from file in new DirectoryInfo("c:\temp\").GetFileSystemInfos("*.mp3") _
select file.LastWriteTime).Max()
(你必须为你需要的每个标准;-)添加私人助手类)。 LastWriteTime到我的代码? – JeffO 2009-11-10 19:38:31
上面没有任何代码示例有帮助吗?你能否用预期的方式编辑你的问题,记住在这个答案中发布的代码示例? – shahkalpesh 2009-11-10 20:09:45