Beispiel #1
0
            public unsafe void AddInstance(char *iniFile, char *section, UInt32 id)
            {
                InstanceSettings new_instance = new InstanceSettings();

                new_instance.Initialize(this, iniFile, section, id);
                this.Instances.Add(id, new_instance);

                bool bInSection = false;

                foreach (string line in System.IO.File.ReadAllLines(new_instance.INI_File))
                {
                    if (line.Trim().StartsWith(";"))
                    {
                        continue;                              // ignore comments
                    }
                    if (line.Trim().StartsWith("["))
                    {
                        bInSection = false;                              // new section
                    }
                    // section test
                    if (line.Trim().ToLower() == ("[" + new_instance.Section.ToLower() + "]"))
                    {
                        bInSection = true;
                    }

                    if (!bInSection)
                    {
                        continue;              // abort this pass if not in section
                    }
                    if (!line.Contains("="))
                    {
                        continue;                      // abort this pass if there's no INI setting here
                    }
                    string[] sLineParts = line.Trim().Split(new char[] { '=' });

                    SectionKey sk = new SectionKey();
                    sk.id       = id;
                    sk.INI_File = new_instance.INI_File;
                    sk.Key      = sLineParts[0].Trim();
                    sk.Section  = new_instance.Section;
                    sk.Value    = ReadConfigString(new_instance.Section, sLineParts[0].Trim());

                    this.KeyValues.Add(sk);
                }
            }
Beispiel #2
0
            public unsafe void AddInstance(char* iniFile, char* section, UInt32 id)
            {
                InstanceSettings new_instance = new InstanceSettings();
                new_instance.Initialize(this, iniFile, section, id);
                this.Instances.Add(id, new_instance);

                bool bInSection = false;
                foreach (string line in System.IO.File.ReadAllLines(new_instance.INI_File))
                {
                    if (line.Trim().StartsWith(";")) continue; // ignore comments
                    if (line.Trim().StartsWith("[")) bInSection = false; // new section

                    // section test
                    if (line.Trim().ToLower() == ("[" + new_instance.Section.ToLower() + "]"))
                        bInSection = true;

                    if (!bInSection) continue; // abort this pass if not in section
                    if (!line.Contains("=")) continue; // abort this pass if there's no INI setting here

                    string[] sLineParts = line.Trim().Split(new char[] { '=' });

                    SectionKey sk = new SectionKey();
                    sk.id = id;
                    sk.INI_File = new_instance.INI_File;
                    sk.Key = sLineParts[0].Trim();
                    sk.Section = new_instance.Section;
                    sk.Value = ReadConfigString(new_instance.Section, sLineParts[0].Trim());

                    this.KeyValues.Add(sk);
                }
            }
Beispiel #3
0
 public Section(string name, SectionKey key)
 {
     Name = name;
     Key  = key;
 }