小功能备忘
using System;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;
using IniParser;
using IniParser.Model;
namespace 某个命名空间
{
public class ConfigHelper
{
private IniData iniData = null;
public FileIniDataParser Paser { get; set; }
public ConfigHelper(String filePath)
{
Paser = new FileIniDataParser();
if (!File.Exists(filePath))
{
iniData = new IniData();
Paser.WriteFile(filePath, iniData);
}
iniData = Paser.ReadFile(filePath);
}
public void ClearSection(String section)
{
iniData[section].RemoveAllKeys();
}
public void CheckSectionExists(String section)
{
if (!iniData.Sections.ContainsSection(section))
iniData.Sections.AddSection(section);
}
public bool ContainsKey(String section, String key)
{
return iniData[section].ContainsKey(key);
}
public String ReadItem(String section, String key)
{
return iniData[section][key];
}
public void WriteItem(String section, String key, String value)
{
iniData[section][key] = value;
}
public Dictionary<String, String> GetAllInfoFromOneSection(String section)
{
CheckSectionExists(section);
var dic = new Dictionary<String, String>();
var iterator = iniData[section].GetEnumerator();
while (iterator.MoveNext())
{
var key = iterator.Current.KeyName.ToString();
dic[key] = iniData[section][key];
}
return dic;
}
public async void SaveINI(String filePath)
{
await Task.Run(() => { Paser.WriteFile(filePath, iniData); });
}
}
}