下面实现按类别和日期来存放文件.,代码如下
public class CategoryFile
{
string path = "D:";
const string ch = "\\";
/// <summary>
/// 文件保存地址
/// </summary>
public String PATH
{
set { path = value; }
get { return path; }
}
string log = string.Empty;
/// <summary>
/// 错误信息,只读属性
/// </summary>
public string LOG
{
get { return log; }
}
/// <summary>
///按类别保存文件
/// </summary>
/// <param name="value">要保存的内容</param>
/// <param name="category">要保存的类别</param>
public void SaveFile(string value, string category)
{
StreamWriter sw = null;
try
{
string identity = DateTime.Now.ToString("yyyyMMdd");
string hour = DateTime.Now.Hour.ToString();
string parentPath = path + ch + identity;
string childPath = parentPath + ch + category + ch + hour;
if (!System.IO.Directory.Exists(DateTime.Now.Year.ToString()))
{
Directory.CreateDirectory(parentPath);
}
if (!Directory.Exists(childPath))
{
Directory.CreateDirectory(childPath);
}
sw = new StreamWriter(childPath + ch + DateTime.Now.ToString("yyyyMMddHHmmss"));
sw.Write(value);
sw.Close();
sw = null;
}
catch (IOException e)
{
log = e.Message;
}
catch (Exception e1)
{
log = e1.Message;
}
finally
{
if (sw != null)
sw.Close();
}
}
}