Folder & File House Keeping

来源:互联网 发布:淘宝怎么看自己的淘龄 编辑:程序博客网 时间:2024/04/30 09:29
//App.config
<?xml version="1.0" encoding="utf-8" ?><configuration>    <configSections>    </configSections>    <startup>         <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1" />    </startup>    <appSettings>       <add key="targetDirectory" value="C:\temp"/>       <add key="onSpotDirectory" value="C:\onSpot"/>       <add key="day" value="5"/>      </appSettings></configuration>

//Form1.cs
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.IO;using System.Configuration;namespace HouseKeeping{public partial class Form1 : Form{string targetDirectory = ConfigurationManager.AppSettings["targetDirectory"];string onSpotDirectory = ConfigurationManager.AppSettings["onSpotDirectory"];int delete = int.Parse(ConfigurationManager.AppSettings["day"]);public Form1(){string time = DateTime.Now.AddDays(-delete).ToString("yyyyMMddHHmmss"); InitializeComponent();HouseKeeping(time);}public void HouseKeeping(string strtime){try{//Folder HouseKeepingstring[] subdirectoryEntries = Directory.GetDirectories(targetDirectory);foreach (string subdirectory in subdirectoryEntries){string t = Directory.GetCreationTime(subdirectory).ToString("yyyyMMddHHmmsss");int result = t.CompareTo(strtime);// -1:subdirectory creattime more than "n" days, no need any more;// 0,1:subdirectory creattime less than "n" days, should keepif (result < 0){Directory.Delete(subdirectory, true);}}//File HouseKeeping// Process the list of files found in the directory. string[] fileEntries = Directory.GetFiles(onSpotDirectory);foreach (string fileName in fileEntries){string temptime = Directory.GetCreationTime(fileName).ToString("yyyyMMddHHmmsss");int result2 = temptime.CompareTo(strtime);if(result2 < 0){File.Delete(fileName);}}}catch(Exception ex){}}}}


0 0
原创粉丝点击