C# 简单的日志读写。

来源:互联网 发布:网络播放器多少钱 编辑:程序博客网 时间:2024/06/05 21:37
/// <summary>
        /// 同步完成写入错误信息
        /// </summary>
        /// <param name="errorInfo"></param>
        public static void WriteSystemErrorLog(string ListName, string SapNumber, string errorInfo)
        {
            try
            {
                string FileName = DateTime.Now.ToString("yyyy-MM-dd");
                string path = @"D:/WorkflowLog/SystemErrorLog";
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);// 创建文件夹
                }
                //new FileStream("", FileMode.OpenOrCreate, FileShare.None);
                using (FileStream fileStream = new FileStream("D:/WorkflowLog/SystemErrorLog/System" + FileName + ".log", FileMode.OpenOrCreate))
                {
                    StreamWriter sw = new StreamWriter(fileStream, Encoding.GetEncoding("GB2312"));
                    //sw.BaseStream.Seek(0, SeekOrigin.Begin);
                    //sw.BaseStream.Seek(0, SeekOrigin.Current);
                    sw.BaseStream.Seek(0, SeekOrigin.End);
                    sw.WriteLine(System.DateTime.Now + "----" + ListName + "    单号:" + SapNumber);
                    sw.WriteLine(errorInfo);
                    sw.WriteLine("===================================================================================");
                    sw.Flush();
                    sw.Close();
                }
            }
            catch (Exception)
            {


                return ;
            }

        }


/// <summary>
        /// 读取错误日志信息
        /// </summary>
        /// <param name="FileName"></param>
        /// <returns></returns>
        public static List<string> ReaderErrorLog(string FileName)
        {
            List<string> list = new List<string>();
            string strLine;


            try
            {
                string path = @"D:/WorkflowLog";
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);// 创建文件夹
                }
                FileStream aFile = new FileStream("D:/WorkflowLog/" + FileName + ".log", FileMode.OpenOrCreate);
                StreamReader reader = new StreamReader(aFile, Encoding.GetEncoding("GB2312"));
                strLine = reader.ReadLine();
                //Read data in line by line 这个兄台看的懂吧~一行一行的读取
                while (strLine != null)
                {
                    list.Add(strLine);
                    strLine = reader.ReadLine();
                }
                reader.Close();
                return list;
            }
            catch (IOException ex)
            {
                writeFile(ex.ToString());
                return list;
            }


        }