diff --git a/Utils/InIReader.cs b/Utils/InIReader.cs index 3c2bcfe..1db1879 100644 --- a/Utils/InIReader.cs +++ b/Utils/InIReader.cs @@ -10,7 +10,7 @@ namespace BlubbFish.Utils { public class InIReader : IDisposable { - private Dictionary> cont; + private Dictionary> inifile; private FileSystemWatcher k = new FileSystemWatcher(Directory.GetCurrentDirectory(), "*.ini"); private String filename; @@ -38,7 +38,7 @@ namespace BlubbFish.Utils private void LoadFile() { - this.cont = new Dictionary>(); + this.inifile = new Dictionary>(); StreamReader file = new StreamReader(this.filename); List buf = new List(); String fline = ""; @@ -55,7 +55,7 @@ namespace BlubbFish.Utils Match match = Regex.Match(line, @"^\[[a-zA-ZäöüÄÖÜ0-9\-_ ]+\]\w*$", RegexOptions.IgnoreCase); if (match.Success) { if (sub.Count != 0 && cap != "") { - this.cont.Add(cap, sub); + this.inifile.Add(cap, sub); } cap = line; sub = new Dictionary(); @@ -68,21 +68,29 @@ namespace BlubbFish.Utils } } if (sub.Count != 0 && cap != "") { - this.cont.Add(cap, sub); + this.inifile.Add(cap, sub); } } - public List GetSections() + public List GetSections(Boolean withBrackets = true) { - return this.cont.Keys.ToList(); + if(withBrackets) { + return this.inifile.Keys.ToList(); + } else { + List ret = new List(); + foreach (String item in this.inifile.Keys) { + ret.Add(item.Substring(1, item.Length - 2)); + } + return ret; + } } public Dictionary GetSection(String section) { - if(this.cont.Keys.Contains(section)) { - return this.cont[section]; + if(this.inifile.Keys.Contains(section)) { + return this.inifile[section]; } - if(this.cont.Keys.Contains("["+section+"]")) { - return this.cont["[" + section + "]"]; + if(this.inifile.Keys.Contains("["+section+"]")) { + return this.inifile["[" + section + "]"]; } return new Dictionary(); } @@ -92,9 +100,9 @@ namespace BlubbFish.Utils if (!section.StartsWith("[")) { section = "[" + section + "]"; } - if (this.cont.Keys.Contains(section)) { - if (this.cont[section].Keys.Contains(key)) { - return this.cont[section][key]; + if (this.inifile.Keys.Contains(section)) { + if (this.inifile[section].Keys.Contains(key)) { + return this.inifile[section][key]; } } return null; @@ -106,17 +114,17 @@ namespace BlubbFish.Utils if (!section.StartsWith("[")) { section = "[" + section + "]"; } - if (this.cont.Keys.Contains(section)) { - if (this.cont[section].Keys.Contains(key)) { - this.cont[section][key] = value; + if (this.inifile.Keys.Contains(section)) { + if (this.inifile[section].Keys.Contains(key)) { + this.inifile[section][key] = value; } else { - this.cont[section].Add(key, value); + this.inifile[section].Add(key, value); } } else { Dictionary sub = new Dictionary { { key, value } }; - this.cont.Add(section, sub); + this.inifile.Add(section, sub); } this.Changed(); } @@ -135,7 +143,7 @@ namespace BlubbFish.Utils file.BaseStream.SetLength(0); file.BaseStream.Flush(); file.BaseStream.Seek(0, SeekOrigin.Begin); - foreach (KeyValuePair> cap in this.cont) { + foreach (KeyValuePair> cap in this.inifile) { file.WriteLine(cap.Key); foreach (KeyValuePair sub in cap.Value) { file.WriteLine(sub.Key + "=" + sub.Value); @@ -156,10 +164,10 @@ namespace BlubbFish.Utils if (!name.StartsWith("[")) { name = "[" + name + "]"; } - if (this.cont.Keys.Contains(name)) { + if (this.inifile.Keys.Contains(name)) { return false; } - this.cont.Add(name, new Dictionary()); + this.inifile.Add(name, new Dictionary()); this.Changed(); return true; } @@ -174,10 +182,10 @@ namespace BlubbFish.Utils if (!name.StartsWith("[")) { name = "[" + name + "]"; } - if (!this.cont.Keys.Contains(name)) { + if (!this.inifile.Keys.Contains(name)) { return false; } - this.cont.Remove(name); + this.inifile.Remove(name); this.Changed(); return false; } diff --git a/Utils/Properties/AssemblyInfo.cs b/Utils/Properties/AssemblyInfo.cs index 28db545..eae4588 100644 --- a/Utils/Properties/AssemblyInfo.cs +++ b/Utils/Properties/AssemblyInfo.cs @@ -10,7 +10,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Utils")] -[assembly: AssemblyCopyright("Copyright © 2014 - 24.09.2017")] +[assembly: AssemblyCopyright("Copyright © 2014 - 25.09.2017")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern // übernehmen, indem Sie "*" eingeben: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.5.1")] -[assembly: AssemblyFileVersion("1.0.5.1")] +[assembly: AssemblyVersion("1.0.5.2")] +[assembly: AssemblyFileVersion("1.0.5.2")] diff --git a/Utils/bin/Release/Utils.dll b/Utils/bin/Release/Utils.dll index 9647ff5..28f5d3d 100644 Binary files a/Utils/bin/Release/Utils.dll and b/Utils/bin/Release/Utils.dll differ