如何按使用C#修改的日期将搜索文件列表到列表框中
本文关键字:列表 文件 搜索 日期 何按使 修改 | 更新日期: 2023-09-27 18:20:28
这里我有一个问题,根据修改的日期将搜索文件列到列表框中。下面的代码显示的只是在列表框中列出搜索文件。谁能帮我解决这个问题吗。。。。。
protected void Button1_Click(object sender, EventArgs e)
{
ListBox1.Items.Clear();
string search = TextBox1.Text; // here type the folder name
if (search != "")
//DirectoryInfo d = new DirectoryInfo(@"''192.123.1.18'Report'Result" + search);
{
string[] files = Directory.GetFiles(@"''192.123.1.16'Report'Result'"+ search, "*.txt", SearchOption.AllDirectories);
foreach (string file in files)
{
//ListBox1.Items.Add(new ListItem(Path.GetFileName(file), file));
ListBox1.Items.Add(new ListItem(Path.GetFileName(file), file)); // listed all files in the search folder
}
{
search = "";
}
}
else
{
Response.Write("<script>alert('Please Enter Search Keyword');</script>");
}
}
对于您可以调用的每个文件:file.GetLastWriteTime,然后根据上次写入日期时间对该文件列表进行排序。
有关更多信息,请参阅下面的文章。https://msdn.microsoft.com/en-us/library/d5da1572.aspx
- 首先创建一个名为FileModifiedDate的类
-
添加到1.Filename、2.ModifiedDate和3.File.中的属性
List<FileModifiedDate> FileList=new List<FileModifiedDate>(); foreach (string file in files) { //ListBox1.Items.Add(new ListItem(Path.GetFileName(file), file)); // ListBox1.Items.Add(new ListItem(Path.GetFileName(file), file)); // FileModifiedDate FileInfo=new FileModifiedDate(); FileInfo.FileName=Path.GetFileName(file); FileInfo.File=file; FileInfo.ModifiedDate=File.GetLastWriteTime(path); FileList.Add(FileInfo); } FileList=FileList.OrderByDescending(a=>a.ModifiedDate).ToList(); foreach (FileModifiedDate SingleFile in FileList) { //ListBox1.Items.Add(new ListItem(Path.GetFileName(file), file)); ListBox1.Items.Add(new ListItem(SingleFile.FileName, SingleFile.file)); // }
对于您可以调用的每个文件:FileInfo.LastWriteTimeUtc,之后,您应该根据它们的上次写入日期时间对该文件列表进行排序。DateTime类实现压缩运算符,这样在对进行排序时就不会出现问题