您的位置:首页 > 编程语言 > C#

C#日志系统记录

2014-01-15 10:42 411 查看
public  class Comm
{
/// <summary>
/// 日志文件记录
/// </summary>
/// <param name="msg">写入信息</param>
//public static void WriteMsg(string msg)
//{
//    string path = Path.Combine("./log");
//    if (!Directory.Exists(path))//判断是否有该文件
//        Directory.CreateDirectory(path);
//    string logFileName = path + "\\" + DateTime.Now.ToString("yyyy-MM-dd") + ".log";//生成日志文件
//    if (!File.Exists(logFileName))//判断日志文件是否为当天
//        File.Create(logFileName);//创建文件
//    StreamWriter writer;
//    try
//    {
//        writer = File.AppendText(logFileName);//文件中添加文件流
//        writer.WriteLine(DateTime.Now.ToString("HH:mm:ss") + " " + msg);
//        writer.Flush();
//        writer.Close();
//    }
//    catch (Exception e)
//    {
//        writer = File.AppendText(logFileName);
//        writer.WriteLine(DateTime.Now.ToString("日志记录错误HH:mm:ss") + " " + e.Message + " " + msg);
//        writer.Flush();
//        writer.Close();
//    }
//}

//日志保存路径,不包括文件名
private static string filePath = System.AppDomain.CurrentDomain.BaseDirectory + "log";
//日志完整路径,包括文件名
//private static string file = filePath + "";
private static string logFileName = filePath + "\\" + DateTime.Now.ToString("yyyy-MM-dd") + ".log";
//    if (!File.Exists(logFileName))//判断日志文件是否为当天
//        File.Create(logFileName);//创建文件

/// <summary>
/// 创建文件夹和日志文件
/// </summary>
private static void CreateLogFile()
{
//文件不存在,则创建新文件
if (!Directory.Exists(filePath))
{
try
{
//按照路径创建目录
Directory.CreateDirectory(filePath);
}
catch (System.Exception e)
{
throw new System.Exception(e + "创建目录失败!");
}
}
if (!File.Exists(logFileName))
{
FileStream filestream = null;
try
{
filestream = File.Create(logFileName);
/*创建日志头部*/
filestream.Dispose();
filestream.Close();
CreateLogHead();
}
catch (System.Exception ex)
{
throw new System.Exception(ex + "创建日志文件失败");
}
}
}

/// <summary>
/// 创建日志头部
/// </summary>
private static void CreateLogHead()
{
System.IO.StreamWriter sw = null;
try
{
sw = new System.IO.StreamWriter(logFileName, true, System.Text.Encoding.UTF8);
sw.WriteLine();
sw.WriteLine();
sw.WriteLine("【日志创建时间***********】【日志内容******************************************************PDF】");
sw.WriteLine();
sw.WriteLine();
}
catch { }
finally
{
sw.Flush();
sw.Dispose();
sw.Close();
}
}

/// <summary>
///写入日志,
///自动创建文件夹和文件,
///日志文件创建到系统启动项根目录的Log文件夹下。
/// </summary>
/// <param name="logText">参数,日志内容</param>
/// <returns>日志写入成功返回true,失败返回false</returns>
public static void WriteLogToFile(string logText)
{
CreateLogFile();
//true 如果日志文件存在则继续追加日志
System.IO.StreamWriter sw = null;
try
{
sw = new System.IO.StreamWriter(logFileName, true, System.Text.Encoding.UTF8);
sw.WriteLine();
sw.WriteLine("【  " + System.DateTime.Now.ToString() + "  】" + "【  " + logText + "  】");
sw.WriteLine();
//return true;
}
catch (System.Exception ex)
{
//return false;
throw new System.Exception(ex + "写入日志失败,检查!");
}
finally
{
sw.Flush();
sw.Dispose();
sw.Close();
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: