C盘最古老的10个文件

无聊地写了个小程序,统计硬盘上最古老的文件,D盘下有一堆MP3,以前从地摊光盘上拷下来的,最后修改时间都是诡异的1990年,严重干扰结果, 于是只统计了C盘,貌似都是Office的货,估计都是写资源文件,把数量放宽到100个,还是都是Office的货。好吧,Office卖那么贵是有道 理的。

Result:
C:/Program Files/Common Files/microsoft shared/PROOF/MSWDS_EN.LEX
        1996/1/4 10:56:24
C:/Windows/System32/VEN2232.OLB
        1996/12/3 14:50:14
C:/Program Files/Microsoft Office/MEDIA/CAGCAT10/J0230876.WMF
        1997/6/27 20:25:30
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART1.BDR
        1997/7/11 0:00:00
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART10.BDR
        1997/7/11 0:00:00
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART11.BDR
        1997/7/11 0:00:00
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART12.BDR
        1997/7/11 0:00:00
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART13.BDR
        1997/7/11 0:00:00
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART14.BDR
        1997/7/11 0:00:00
C:/Program Files/Microsoft Office/Office14/BORDERS/MSART15.BDR
        1997/7/11 0:00:00

 

资源文件啥的太没意思的,把文件类型限定为exe或者dll,结果如下,年轻了好多啊。

Result:
C:/Program Files/Common Files/microsoft shared/EQUATION/EQNEDT32.EXE
        2000/11/9 13:41:14
C:/Program Files/Common Files/InstallShield/Engine/6/Intel 32/objectps.dll
        2001/9/5 21:13:42
C:/Program Files/Common Files/InstallShield/Engine/6/Intel 32/iuser.dll
        2001/9/5 21:14:42
C:/Program Files/Common Files/InstallShield/Engine/6/Intel 32/ctor.dll
        2001/9/5 21:18:52
C:/Program Files/Common Files/InstallShield/IScript/iscript.dll
        2001/9/6 14:18:34
C:/Program Files/Lenovo/HOTKEY/msvcr71.dll
        2003/2/21 21:42:22
C:/Program Files/Lenovo/HOTKEY/msvcp71.dll
        2003/3/19 13:14:50
C:/Program Files/Common Files/microsoft shared/TRANSLAT/MSB1EALR.DLL
        2003/4/18 1:57:04
C:/Program Files/Common Files/InstallShield/Professional/RunTime/Objectps.dll
        2003/11/10 18:10:06
C:/Program Files/Common Files/InstallShield/Professional/RunTime/09/01/Intel32/DotNetInstaller.exe
        2003/11/10 18:11:58

 

代码

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections.Specialized; using System.IO; namespace OldestFile { class Program { static private List<Record> oldest = new List<Record>(); static void Main(string[] args) { DriveInfo[] disk = DriveInfo.GetDrives(); foreach (DriveInfo di in disk) { //AccessAllFiles(di.Name); } AccessAllFiles(@"C:/"); Console.WriteLine(); Console.WriteLine("Result:"); for (int j = 0; j < oldest.Count; j++) { Console.WriteLine(oldest[j].fullName); Console.Write("/t"); Console.WriteLine(oldest[j].lastWriteTime); } Console.ReadKey(); } static private void AccessAllFiles(string parentDir) { try { string[] dir = Directory.GetDirectories(parentDir); System.Console.WriteLine(parentDir); for (int i = 0; i < dir.Length; i++) { AccessAllFiles(dir[i]); } string[] file = Directory.GetFiles(parentDir); for (int i = 0; i < file.Length; i++) { //System.Console.WriteLine(file[i]); FileInfo fi = new FileInfo(file[i]); if(fi.Extension != ".exe" && fi.Extension != ".Exe" && fi.Extension != ".EXE" && fi.Extension != ".dll" && fi.Extension != ".Dll" && fi.Extension != ".DLL") { continue; } if (oldest.Count == 0) { oldest.Add(new Record(fi.LastAccessTime, fi.FullName)); } else { for (int j = 0; j < oldest.Count; j++) { if (fi.LastWriteTime < oldest[j].lastWriteTime) { oldest.Insert(j, new Record(fi.LastWriteTime, fi.FullName)); break; } } if (oldest.Count > 10) { oldest.RemoveAt(oldest.Count - 1); } } } } catch { } } class Record { public DateTime lastWriteTime; public String fullName; public Record(DateTime time, String name) { lastWriteTime = time; fullName = name; } } } }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值