按日期asp.net过滤DirectoryInfo的文件 [英] Filter DirectoryInfo files by date in asp.net

查看:255
本文介绍了按日期asp.net过滤DirectoryInfo的文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我填充使用指定的路径(DirectoryInfo的)文件的DataGrid控件。结果
我想过滤基于用户指定日期范围内的文件(开始日期和放大器;结束日期)。

而搜索S / O,我发现职位,但我得到的DateComparer错误('DateComparer是一个类型,不能被用来作为一个前pression。

如何按日期过滤任何其他建议?

下面是我的code:

 昏暗dirInfo作为新DirectoryInfo的(strDirectoryPath)
        昏暗dStartDate为DATETIME =03/01/2011
        昏暗dEndDate为DATETIME =6/30/2011
        昏暗的文件作为的FileInfo = dirInfo.GetFiles()式。(功能(文​​件)Files.CreationTime> =(dStartDate)AndAlso运算Files.CreationTime< = dEndDate)            datagrid.DataSource =文件
            datagrid.DataBind()


解决方案

 的DateTime your_start_date =新日期时间(2011,1,1);
日期时间your_end_date =新日期时间(2011,10,1);
的FileInfo []文件=新的DirectoryInfo(@C:\\)。的GetFiles(),其中(X => x.CreationTime> =(your_start_date)及和放大器; x.CreationTime< =(your_end_date))ToArray的( );的foreach(在文件VAR项)
{
 Console.WriteLine(item.Name);
}

在我的测试情况下,打印出:

  copy_one.jpg
copy_one_one.jpg
copy_one_one_one.jpg
的hiberfil.sys
one.jpg
PAGEFILE.SYS
PcapDotNet.snk

UPDATE(VB版):

 昏暗your_start_date作为新的DateTime(2011,1,1)
昏暗your_end_date作为新的DateTime(2011,10,1)
。昏暗的文件作为的FileInfo()=新的DirectoryInfo(C:\\)的GetFiles()式(功能(X)x.CreationTime> =(your_start_date)AndAlso运算x.CreationTime< =(your_end_date))ToArray的(。 )对于每个项目的FileInfo在文件列表中
    Console.WriteLine(item.Name)
下一个

I am populating a datagrid control using files in a specified path (DirectoryInfo).
I would like to filter the files based on a user specified date range (start date & end date).

While search S/O, I found this post, but I am getting an error on DateComparer ("'DateComparer' is a type and cannot be used as an expression.")

Any other suggestions on how to filter by date?

Here is my code:

        Dim dirInfo As New DirectoryInfo(strDirectoryPath)
        Dim dStartDate As DateTime = "03/01/2011"
        Dim dEndDate As DateTime = "6/30/2011"
        Dim Files As FileInfo = dirInfo.GetFiles().Where(Function(Files) Files.CreationTime >= (dStartDate) AndAlso Files.CreationTime <= dEndDate)

            datagrid.DataSource = Files
            datagrid.DataBind()

解决方案

DateTime your_start_date = new DateTime(2011,1,1);
DateTime your_end_date = new DateTime(2011,10,1);
FileInfo [] files = new DirectoryInfo(@"c:\").GetFiles().Where(x=>x.CreationTime>=(your_start_date) && x.CreationTime<=(your_end_date)).ToArray();

foreach(var item in files)
{
 Console.WriteLine(item.Name);
}

On my test case prints out:

copy_one.jpg
copy_one_one.jpg
copy_one_one_one.jpg
hiberfil.sys
one.jpg
pagefile.sys
PcapDotNet.snk

UPDATE (VB version):

Dim your_start_date As New DateTime(2011, 1, 1)
Dim your_end_date As New DateTime(2011, 10, 1)
Dim files As FileInfo() = New DirectoryInfo("c:\").GetFiles().Where(Function(x) x.CreationTime >= (your_start_date) AndAlso x.CreationTime <= (your_end_date)).ToArray()

For Each item As FileInfo In files
    Console.WriteLine(item.Name)
Next

这篇关于按日期asp.net过滤DirectoryInfo的文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆