Log日志

/*功能描述:日志写入
 * **/
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;

namespace Function.Common
{
    public class Log
    {
        private static string logFileInfo=AppDomain.CurrentDomain.BaseDirectory + @"log\"+System.DateTime.Now.ToString("yyyy-MM-dd")+"_infomation.txt";
        private static string logFileExce = AppDomain.CurrentDomain.BaseDirectory + @"log\" + System.DateTime.Now.ToString("yyyy-MM-dd") + "_exception.txt";
        /// <summary>
        /// 日志写入
        /// </summary>
        /// <param name="info">写入内容</param>         
        public static void WriteInfo(string info)
        {
            StreamWriter writer = null;
            FileStream fileStream = null;  
            try
            {
                CreateDirectory(logFileInfo);

                System.IO.FileInfo fileInfo = new System.IO.FileInfo(logFileInfo);
                if (!fileInfo.Exists)
                {
                    fileStream = fileInfo.Create();
                    writer = new StreamWriter(fileStream);
                }
                else
                {
                    fileStream = fileInfo.Open(FileMode.Append, FileAccess.Write);
                    writer = new StreamWriter(fileStream);
                }
                writer.WriteLine(DateTime.Now + ": " + info);

            }
            catch { }
            finally
            {
                if (writer != null)
                {
                    writer.Close();
                    writer.Dispose();
                    fileStream.Close();
                    fileStream.Dispose();
                }
            }
        }
        /// <summary>
        /// 日志写入
        /// </summary>
        /// <param name="info">写入异常</param>         
        public static void WriteExce(string info)
        {
            StreamWriter writer = null;
            FileStream fileStream = null;
            try
            {
                CreateDirectory(logFileExce);

                System.IO.FileInfo fileInfo = new System.IO.FileInfo(logFileExce);
                if (!fileInfo.Exists)
                {
                    fileStream = fileInfo.Create();
                    writer = new StreamWriter(fileStream);
                }
                else
                {
                    fileStream = fileInfo.Open(FileMode.Append, FileAccess.Write);
                    writer = new StreamWriter(fileStream);
                }
                writer.WriteLine(DateTime.Now + ": " + info);

            }
            catch { }
            finally
            {
                if (writer != null)
                {
                    writer.Close();
                    writer.Dispose();
                    fileStream.Close();
                    fileStream.Dispose();
                }
            }
        }
        /// <summary>
        /// 创建文件目录
        /// </summary>
        /// <param name="infoPath">目录名</param>
        public static void CreateDirectory(string infoPath)
        {
            DirectoryInfo directoryInfo = Directory.GetParent(infoPath);
            long length = GetFileLength(infoPath);
            if ((int)length > 5)//文件大小超过5M自动删除,重新创建新文件
            {
                FileInfo file = new FileInfo(infoPath);
                file.Delete();               
            }
            if (!directoryInfo.Exists)
            {
                directoryInfo.Create();
            }           
        }
        #region 获取文件大小       
        /// <summary>
        /// 获取文件大小
        /// </summary>
        /// <param name="filePath">文件路径</param>
        /// <returns></returns>
        public static long GetFileLength(string filePath)
        {
            if (!File.Exists(filePath))
                return 0;
            long len = 0;
            FileInfo fileInfo = new FileInfo(filePath);
            len = fileInfo.Length/(1024*1024);//获取文件大小(M)           
            return len;
        }
        #endregion


    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值