WAR.cs 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7. using Uninpho.DBOperation.Model;
  8. using Uninpho.DBOperation.Operation;
  9. namespace ZDHscript
  10. {
  11. /// <summary>
  12. /// 读文件
  13. /// </summary>
  14. class WAR
  15. {
  16. /// <summary>
  17. /// WAR主函数
  18. /// 读取zdh.ini 再读取文件
  19. /// </summary>
  20. public static void ReadFile()
  21. {
  22. StreamReader sr = new StreamReader(System.Environment.CurrentDirectory + "\\zdh.ini");
  23. string DirectoryPath = Environment.CurrentDirectory + "\\dataFolder";
  24. while (!sr.EndOfStream)
  25. {
  26. string[] str = sr.ReadLine().Split('灬');
  27. if (str[0] == "folder")
  28. {
  29. DirectoryPath = str[1];
  30. break;
  31. }
  32. }
  33. sr.Close();
  34. //读取geo
  35. readGeo(DirectoryPath + "\\geoData");
  36. //读取bny
  37. readBny(DirectoryPath + "\\bnyData");
  38. }
  39. /// <summary>
  40. /// 读取geo文件
  41. /// </summary>
  42. public static void readGeo(string url)
  43. {
  44. try
  45. {
  46. List<string> List = GetAllFiles(new System.IO.DirectoryInfo(url));
  47. foreach (var item in List)
  48. {
  49. if (Path.GetExtension(item).ToLower() == ".geo")
  50. {
  51. Console.WriteLine(string.Format("文件目录:{0}", item));
  52. Store.geoList.Add(item);
  53. }
  54. }
  55. }
  56. catch (Exception ex)
  57. {
  58. ColorClass.Console_EorrColor(ex.Message);
  59. throw;
  60. }
  61. }
  62. /// <summary>
  63. /// 读取Bny文件
  64. /// </summary>
  65. public static void readBny(string url)
  66. {
  67. try
  68. {
  69. List<string> List = GetAllFiles(new System.IO.DirectoryInfo(url));
  70. foreach (var item in List)
  71. {
  72. if (Path.GetExtension(item).ToLower() == ".bny")
  73. {
  74. Console.WriteLine(string.Format("文件目录{0}", item));
  75. Store.bnyList.Add(item);
  76. }
  77. }
  78. }
  79. catch (Exception ex)
  80. {
  81. ColorClass.Console_EorrColor(ex.Message);
  82. throw;
  83. }
  84. }
  85. /// <summary>
  86. /// 遍历所有文件
  87. /// </summary>
  88. public static List<string> GetAllFiles(DirectoryInfo dir)
  89. {
  90. List<string> FileList = new List<string>();
  91. FileInfo[] allFile = dir.GetFiles();
  92. foreach (FileInfo fi in allFile)
  93. {
  94. FileList.Add(fi.FullName);
  95. }
  96. DirectoryInfo[] allDir = dir.GetDirectories();
  97. foreach (DirectoryInfo d in allDir)
  98. {
  99. GetAllFiles(d);
  100. }
  101. return FileList;
  102. }
  103. /// <summary>
  104. /// 记录日志
  105. /// </summary>
  106. /// <param name="str"></param>
  107. public static void RecordLog(string str)
  108. {
  109. Store.strLog += DateTime.Now.ToString() + " : " + str + "\r\n";
  110. }
  111. /// <summary>
  112. /// 保存日志
  113. /// 记录每次自动化执行算法情况
  114. /// </summary>
  115. public static void SaveLog()
  116. {
  117. string url = System.Environment.CurrentDirectory + "\\log\\";
  118. if (!Directory.Exists(url))
  119. {
  120. DirectoryInfo di = Directory.CreateDirectory(url);
  121. di.Attributes = FileAttributes.Directory;
  122. }
  123. //最后再写
  124. StreamWriter sw = new StreamWriter(url + "自动化_" + DateTime.Now.ToString("yyyy年MM月dd日HH时mm分ss秒") + ".log");
  125. sw.Write(Store.strLog);
  126. sw.Close();
  127. }
  128. }
  129. }