【问题标题】:how to delete file according to its date and time in asp.net c#如何在asp.net c#中根据文件的日期和时间删除文件
【发布时间】:2013-03-21 10:25:02
【问题描述】:

我在谷歌上搜索了很多,我找到了一些回应,但没有找到我想要的。我想要的是 假设我在同一日期的文件夹中有 5 个文件 同一日期: 第一个文件-1mb 第二个文件=2mb 第三个文件-3mb 第四个文件-4mb 第5个文件-5mb

现在当我点击我的按钮时,它将删除除 5mb 以外的所有文件,因为它的大小。

首先我想根据文件夹中的日期搜索文件,然后删除该特定日期的所有文件,但最大的文件除外。

我不想要代码,我想要可以在这个项目中使用的功能。 提前致谢

【问题讨论】:

  • “我在 google 上搜索了很多,我发现了一些响应,但没有找到我想要的” - 当然不是,并不是每个具体问题都已写出并解决网络。你要把你的问题分解成小步骤,一一解决,这就是编程。在您的问题中,我错过了您尝试过的内容。
  • @CodeCaster 我知道,但我正在处理它并且代码不好,这就是为什么我没有在这里发布我不想要代码我只知道这个过程,我想这个问题是好的,所以我认为如果我说错了,人们不会对这个问题投反对票

标签: asp.net web-applications


【解决方案1】:

使用DirectoryInfo可以获取指定路径下的所有文件,根据File.Length属性获取Max size文件然后删除如下:

DirectoryInfo di = new DirectoryInfo("C:\"");
var files = di.GetFiles();
var maxFileSize = files.Max(r => r.Length);

foreach (FileInfo file in files.Where(r => r.Length < maxFileSize))
{
    file.Delete();
}

【讨论】:

  • 我只有一个问题,这是一个非常愚蠢的问题,我创建一个函数并在我的按钮上调用该函数,或者我只是将该代码放在我的按钮事件中
  • 最好将其提取到一个函数中,以便您可以从多个位置调用它。
  • @amitesh,你是如何创建路径的?
  • DirectoryInfo di = new DirectoryInfo("E:\test");这是我的路
  • @amitesh,你必须转义反斜杠,它应该是DirectoryInfo di = new DirectoryInfo("E:\\test"),在字符串中你必须用双反斜杠转义反斜杠
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-27
相关资源
最近更新 更多