using System.IO;//添加引用
//==============创建文件夹或文件===============
string timenow = DateTime.Today.ToString("yyyy_MM_dd");//当前日期
string Writetxt_path = Environment.CurrentDirectory + "\\Writetxt_**\\";//获取路径
if (!Directory.Exists(Writetxt_path))//判断是否已拥有以Writetxt_**命名的文件夹
{
Directory.CreateDirectory(Writetxt_path);//创建文件夹
}
string path = Environment.CurrentDirectory + "\\Writetxt_**\\" + timenow + "\\";
if (!Directory.Exists(path))//判断Writetxt_**文件夹中是否已拥有以timenow命名的文件夹
{
Directory.CreateDirectory(path);//创建以日期命名的子文件夹
}
path += DateTime.Now.ToString("yyyy_MM_dd_HH") + ".txt";//以每小时命名创建txt
using (FileStream fs = new FileStream(path, FileMode.Append, FileAccess.Write, FileShare.Write))//打开并写入
{
StreamWriter wr = new StreamWriter(fs, Encoding.UTF8);
wr.WriteLine("写入txt的内容");
wr.Flush();
wr.Close();
wr.Dispose();
}
//==============删除几天前的创建的文件夹或文件==============
DirectoryInfo direinfo_path = new DirectoryInfo(Writetxt_path);
foreach (DirectoryInfo diinfo in direinfo_path.GetDirectories())//遍历指定文件夹中的文件夹
{
DateTime dt = diinfo.CreationTime;//文件夹创建时间
if (dt < DateTime.Now.AddDays(-30))//判断是否为30天前的文件夹
{
foreach (FileInfo txtinfo in diinfo.GetFiles())//遍历文件夹的文件
{
txtinfo.Attributes = FileAttributes.Normal & FileAttributes.Directory;
File.Delete(txtinfo.FullName);//删除(删除文件夹必须先把目录下的文件删除)
}
diinfo.Attributes = diinfo.Attributes & ~(FileAttributes.Archive | FileAttributes.ReadOnly | FileAttributes.Hidden);
diinfo.Delete();
}
}