这需要一个良好的文件归档习惯,我介绍一下我的习惯,比如文件夹/20140418/下有多个文件,那就是: /20140418/Sql_20140418010025123.log 起始名sql_表示这是SQL日志,后面的20140418是当前年月日,010025123分别是小时分钟秒毫秒,这样的组合基本拒绝了重复的可能。下面是代码:Dim d_FS As FileStream If My.Computer.FileSystem.FileExists(d_FileName) Then d_FS = New FileStream(d_FileName, FileMode.Append, FileAccess.Write) Else d_FS = New FileStream(d_FileName, FileMode.CreateNew, FileAccess.Write) End If Dim d_SW As New StreamWriter(d_FS) d_SW.WriteLine((Format(Now, "yyyy-MM-dd HH:mm:ss") + ":" + p_Content)) d_SW.Close() d_SW = Nothing d_FileName = Nothing
你可以获取每个文件的创建日期属性,根据日期判断写入文件。
string[] files = Directory.GetFiles(目录路径);
然后遍历,取文件名比较(可以字符串截取,也可以用FileInfo对象),最后归类
这需要一个良好的文件归档习惯,我介绍一下我的习惯,比如文件夹/20140418/下有多个文件,那就是:
/20140418/Sql_20140418010025123.log 起始名sql_表示这是SQL日志,后面的20140418是当前年月日,010025123分别是小时分钟秒毫秒,这样的组合基本拒绝了重复的可能。下面是代码:Dim d_FS As FileStream
If My.Computer.FileSystem.FileExists(d_FileName) Then
d_FS = New FileStream(d_FileName, FileMode.Append, FileAccess.Write)
Else
d_FS = New FileStream(d_FileName, FileMode.CreateNew, FileAccess.Write)
End If
Dim d_SW As New StreamWriter(d_FS)
d_SW.WriteLine((Format(Now, "yyyy-MM-dd HH:mm:ss") + ":" + p_Content))
d_SW.Close()
d_SW = Nothing
d_FileName = Nothing