// 設定ファイルから"lang"の値を読み出す public bool IsJp() { var listVal = new ListVal { new OneVal("lang", 2, Crlf.Nextline, new CtrlComboBox("Language", new[] { "Japanese", "English", "Auto" }, 80)) }; Read("Basic", listVal); var oneVal = listVal.Search("lang"); var bjdLangId = (int)oneVal.Value; if (bjdLangId == 2 /*Auto*/) { return(Thread.CurrentThread.CurrentUICulture.Name == "ja-JP"); } else { return(bjdLangId == 0); } }
public void 設定ファイルにテキストでセットしてreadして当該設定が読み込めるかどうか(CtrlType ctrlType, string value, string regStr) { //setUp string fileName = "iniDbTestTmp"; //テンポラリファイル名 //string progDir = new File(".").getAbsoluteFile().getParent(); string progDir = Directory.GetCurrentDirectory(); string path = string.Format("{0}\\{1}.ini", progDir, fileName); IniDb sut = new IniDb(progDir, fileName); sut.Delete(); String expected = value; //exercise List <string> lines = new List <string>(); lines.Add(regStr); File.WriteAllLines(path, lines); ListVal listVal = new ListVal(); listVal.Add(Assistance.createOneVal(ctrlType, null)); sut.Read("Basic", listVal); // nameTagは"Basic"で決め打ちされている OneVal oneVal = listVal.Search("name"); string actual = oneVal.ToReg(false); //verify Assert.That(actual, Is.EqualTo(expected)); //TearDown sut.Delete(); }
private bool Read(String fileName, String nameTag, ListVal listVal) { var isRead = false; if (File.Exists(fileName)) { var lines = File.ReadAllLines(fileName, Encoding.GetEncoding(932)); foreach (var s in lines) { var o = ReadLine(s); if (o != null) { if (o.NameTag == nameTag || o.NameTag == nameTag + "Server") { var oneVal = listVal.Search(o.Name); //Ver5.9.2 過去バージョンのOption.ini読み込みへの対応 //ProxyPop3 拡張設定 if (o.NameTag == "ProxyPop3Server" && o.Name == "specialUser") { oneVal = listVal.Search("specialUserList"); } //Ver5.8.8 過去バージョンのOption.ini読み込みへの対応 if (oneVal == null) { if (o.Name == "nomalFileName") { oneVal = listVal.Search("normalLogKind"); } else if (o.Name == "secureFileName") { oneVal = listVal.Search("secureLogKind"); //Ver5.9.2 } else if (o.Name == "LimitString") { oneVal = listVal.Search("limitString"); } else if (o.Name == "UseLimitString") { oneVal = listVal.Search("useLimitString"); } else if (o.Name == "EnableLimitString") { oneVal = listVal.Search("isDisplay"); } else if (o.Name == "useLog") { oneVal = listVal.Search("useLogFile"); } } //Ver6.1.0 過去バージョンのOption.ini読み込みへの対応 //DnsDomain if (o.NameTag == "DnsDomain") { var col = o.ValStr.Split(new[] { '\t' }, StringSplitOptions.RemoveEmptyEntries); if (col.Length == 1) { //Ver6.0.9以前は、カラムが1つであるので、( \tgoogle.com ) //追加された2カラム目のデフォルト値を追加して読み直す (\tgoogle.com\True ) o = ReadLine(s + "\tTrue"); } } if (oneVal != null) { if (!oneVal.FromReg(o.ValStr)) { if (o.ValStr != "") { //Ver5.8.4コンバートしてみる if (oneVal.FromRegConv(o.ValStr)) { } } } isRead = true; // 1件でもデータを読み込んだ場合にtrue } } } } } return(isRead); }
public void 設定ファイルにテキストでセットしてreadして当該設定が読み込めるかどうか(CtrlType ctrlType, string value, string regStr) { //setUp string fileName = "iniDbTestTmp"; //テンポラリファイル名 //string progDir = new File(".").getAbsoluteFile().getParent(); string progDir = Directory.GetCurrentDirectory(); string path = string.Format("{0}\\{1}.ini", progDir, fileName); IniDb sut = new IniDb(progDir, fileName); sut.Delete(); String expected = value; //exercise List<string> lines = new List<string>(); lines.Add(regStr); File.WriteAllLines(path,lines); ListVal listVal = new ListVal(); listVal.Add(Assistance.createOneVal(ctrlType, null)); sut.Read("Basic", listVal); // nameTagは"Basic"で決め打ちされている OneVal oneVal = listVal.Search("name"); string actual = oneVal.ToReg(false); //verify Assert.That(actual, Is.EqualTo(expected)); //TearDown sut.Delete(); }