ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#程式Log的保存

2019-11-01 18:50:53  阅读:174  来源: 互联网

标签:文件 Now Log filePath C# 程式 DateTime txt


  噹噹噹噹,我又來啦,这次终于可以插入代码了~這一次關於Log的保存的,將相關運行訊息保存到以日期命名的txt檔內。

  1. 在執行目錄下新建Log文件夾。

   string filePath = System.AppDomain.CurrentDomain.BaseDirectory + " Log ";   //AppDomain.CurrentDomain.BaseDirectory為獲取程式的基目錄,基目錄後加上Log為Log路徑

  if ( ! Directory.Exists( filePath ) )   Directory.CreateDirectory ( filePath ) ;   //如果路徑不存在,則創建此路徑(即程式基目錄下沒有Log這個文件夾時創建Log文件夾)

  2. 在Log文件夾下建立以日期命名的txt檔,並且將相應信息寫入此txt檔。 

  string logPath = filePath + " \\ " +DateTime.Now.ToString ( " yyyy-MM-dd " )  + " .txt " ;   //txt檔路徑,在Log文件夾路徑後加上\xxxx-xx-xx.txt,第一個 “ \ ” 為轉義符。

  try

  {

    using ( StreamWriter sw = File.AppendText ( logPath )   //打开文件并准备写信息

    {

      sw.WriteLine ( DateTime.Now.ToString ( " HH:mm:ss " ) + " 需要保存的運行信息 " ) ;   //写入當前時間+相应信息

    }

  }

  catch ( Exception ex )   //寫log過程中出現異常

  {

    MessageBox.Show ( DateTime.Now.ToString ( " HH:mm:ss " ) + " 寫日誌失敗 " ,  " 錯誤提示 "  ) ;   //跳出MessageBox,顯示為錯誤提示,並指明寫日誌失敗

  }

  3. 定期清除:log檔每滿7天就將7天前的log檔清除。

string[] files=Directory.GetFiles(filePath, "*.txt");  //Log文件夹下的所有txt文件信息数组
foreach(var file in files)  //每个txt文件
{
    FileInfo fi=new FileInfo(file);  //new一个FileInfo对象fi
    if((DateTime.Now-fi.CreatTime).TotalDays>7) fi.Delete();  //如果现在时间减去txt档的创建时间大于7,将此txt档删除
    else break;
}

  简单的运行信息保存log的程式如上,方法不仅限于这一种,大家可以在网上查找,多试试。

    

标签:文件,Now,Log,filePath,C#,程式,DateTime,txt
来源: https://www.cnblogs.com/kigila/p/11777937.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有