LogGeneratorFun.cs 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace Uninpho.Tools.components
  8. {
  9. /// <summary>
  10. /// 日志生成
  11. /// </summary>
  12. class LogGeneratorFun
  13. {
  14. /// <summary>
  15. /// 记录静态日志文件
  16. /// </summary>
  17. /// <param name="username">修改人</param>
  18. /// <param name="writeRC">修改行列(按照 符号'_' 连接)</param>
  19. /// <param name="oldvalue">旧值</param>
  20. /// <param name="newvalue">新值</param>
  21. /// <param name="sFileName">日志文件路径</param>
  22. public static void WriteLogJT(List<StaticLogClass> logdata ,string sFileName)
  23. {
  24. List<string> LogString = new List<string>();
  25. foreach (var log in logdata)
  26. {
  27. LogString.Add(log.Date + "\t" + log.Username + "\t" + log.Row.ToString() + "_" + log.Column.ToString() + "\t" + log.Oldvalue + "\t" + log.Newvalue);
  28. }
  29. WriteLog(sFileName, LogString);
  30. }
  31. /// <summary>
  32. /// 记录日志
  33. /// </summary>
  34. /// <param name="path"></param>
  35. /// <param name="LogString"></param>
  36. private static void WriteLog(string path , List<string> LogString)
  37. {
  38. FileStream fs;
  39. StreamWriter sw;
  40. if (File.Exists(path))
  41. //验证文件是否存在,有则追加,无则创建
  42. {
  43. fs = new FileStream(path, FileMode.Append, FileAccess.Write);
  44. }
  45. else
  46. {
  47. fs = new FileStream(path, FileMode.Create, FileAccess.Write);
  48. }
  49. sw = new StreamWriter(fs);
  50. foreach (var item in LogString)
  51. {
  52. sw.WriteLine(item);
  53. }
  54. sw.Close();
  55. fs.Close();
  56. }
  57. }
  58. public class StaticLogClass
  59. {
  60. public string Row { get; set; }
  61. public string Column { get; set; }
  62. public string Username { get; set; }
  63. public string Oldvalue { get; set; }
  64. public string Newvalue { get; set; }
  65. public string Date { get; set; }
  66. }
  67. }