using System; using System.IO; using System.Text; namespace LP; public class MySignal { public bool mLoadXianLu_setting = false; public bool mSaveXianLu_setting = false; public bool mLoadTask_setting = false; public bool mSaveTask_setting = false; public bool mLoadExTask_setting = false; public bool mSaveExTask_setting = false; public bool mLoadGanTa_setting = false; public bool mSaveGanTa_setting = false; public bool mLoadTGanTa_setting = false; public bool mSaveTGanTa_setting = false; public bool mLoadCanShuFenJi_setting = false; public bool mSaveCanShuFenJi_setting = false; public bool mNeed_PrepareParameters_setting = false; public bool mShowButton_GuZhangFuXian = false; public bool mShow_Province = false; public void MyLoad_Setting(string _filename) { if (string.IsNullOrEmpty(_filename)) { MyLog.AddLog("MyLoad_Setting(_filename) 参数1为空:配置文件名(绝对路径)"); return; } if (!File.Exists(_filename)) { MyLog.AddLog("MyLoad_Setting(_filename) 文件未找到。文件名=" + _filename); return; } bool flag = false; int i = -1; int num = 0; int num2 = 0; string[] array = new string[18] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" }; string[] array2 = new string[18] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" }; Encoding[] array3 = new Encoding[6] { Encoding.UTF8, Encoding.Default, Encoding.ASCII, Encoding.Unicode, Encoding.UTF7, Encoding.UTF32 }; int num3 = 0; bool flag2 = false; string text = ""; for (int j = 0; j < array3.Length; j++) { try { using FileStream fileStream = new FileStream(_filename, FileMode.Open, FileAccess.Read, FileShare.None); using (StreamReader streamReader = new StreamReader(fileStream, array3[j])) { text = streamReader.ReadToEnd(); if (string.IsNullOrEmpty(text) || text.IndexOf("直流") >= 0) { num3 = j; flag2 = true; } streamReader.Close(); } fileStream.Close(); } catch (Exception) { } if (flag2) { break; } } using FileStream fileStream2 = new FileStream(_filename, FileMode.Open, FileAccess.Read, FileShare.None); using (StreamReader streamReader2 = new StreamReader(fileStream2, array3[num3])) { while (!streamReader2.EndOfStream) { text = streamReader2.ReadLine().Trim(); if (string.IsNullOrEmpty(text)) { continue; } if (!flag) { for (i = 0; i < array.Length; i++) { if (text.IndexOf(array[i]) >= 0) { flag = true; num = 0; break; } } continue; } if (flag) { for (int k = 0; k < array2.Length; k++) { if (text.IndexOf(array2[k]) >= 0) { flag = false; i = -1; break; } } if (!flag) { continue; } } switch (array[i]) { case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mShowButton_GuZhangFuXian = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mLoadXianLu_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mSaveXianLu_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mLoadTask_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mSaveTask_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mLoadExTask_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mSaveExTask_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mLoadGanTa_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mSaveGanTa_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mLoadTGanTa_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mSaveTGanTa_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mLoadCanShuFenJi_setting = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mSaveCanShuFenJi_setting = num2 > 0; } num++; break; case "": if (num == 0) { GanTas.mSubPath_Models = text; } num++; break; case "": if (num == 0) { GanTas.mSubPath_ModelsSimple = text; } num++; break; case "": if (num == 0) { GanTas.mName_GanTaModels.Clear(); } GanTas.mName_GanTaModels.Add(text); num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mShow_Province = num2 > 0; } num++; break; case "": if (num == 0) { try { num2 = Convert.ToInt32(text); } catch (Exception) { num2 = -1; } mNeed_PrepareParameters_setting = num2 > 0; } num++; break; } } streamReader2.Close(); } fileStream2.Close(); } }