首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在DirectoryInfo中按日期过滤asp.net文件

在DirectoryInfo中按日期过滤asp.net文件
EN

Stack Overflow用户
提问于 2011-10-09 16:31:09
回答 1查看 4.2K关注 0票数 3

我正在使用指定路径(DirectoryInfo)中的文件填充数据集控件。

我想根据用户指定的日期范围(开始日期和结束日期)过滤文件。

在搜索S/O时,我找到了this post,但是我在DateComparer上得到了一个错误("'DateComparer‘是一种类型,不能用作表达式“)。

关于如何按日期过滤,还有其他建议吗?

这是我的代码:

代码语言:javascript
复制
        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()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-09 16:37:01

代码语言:javascript
复制
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);
}

我的测试用例打印出来:

代码语言:javascript
复制
copy_one.jpg
copy_one_one.jpg
copy_one_one_one.jpg
hiberfil.sys
one.jpg
pagefile.sys
PcapDotNet.snk

更新(VB版本):

代码语言:javascript
复制
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
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7704881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档