/// <summary> /// キーの削除 /// </summary> /// <param name="iSection">セクション名</param> /// <param name="iKey">キー名</param> /// <returns>成功:True</returns> public bool RemoveKey(string iSection, string iKey) { if (string.IsNullOrEmpty(iSection) || string.IsNullOrEmpty(iSection)) { return(false); } IniFileUtil.WritePrivateProfileString(iSection, iKey, null, this.FileName); return(true); }
/// <summary> /// 文字列を取得 /// </summary> /// <param name="iSection">セクション名</param> /// <param name="iKey">キー名</param> /// <param name="iDefault">デフォルト文字列</param> /// <returns>INIファイルより取得した文字列</returns> public string GetString(string iSection, string iKey, string iDefault = DEFAULT_STRING) { if (string.IsNullOrEmpty(iSection) || string.IsNullOrEmpty(iSection)) { return(iDefault); } StringBuilder sb = new StringBuilder(MAX_BUFFER_SIZE); IniFileUtil.GetPrivateProfileString(iSection, iKey, iDefault, sb, (uint)sb.Capacity, this.FileName); return(sb.ToString()); }
/// <summary> /// INIファイルのセクション名一覧を取得 /// </summary> /// <param name="iDefault">デフォルトセクション名</param> /// <returns>INIファイルより取得したセクション名一覧</returns> public List <string> GetSectionList(string iDefault = DEFAULT_STRING) { byte[] b = new byte[1024]; uint length = IniFileUtil.GetPrivateProfileStringByByteArray(null, null, iDefault, b, (uint)b.Length, this.FileName); string[] sections = Encoding.Default.GetString(b, 0, (int)length - 1).Split('\0'); List <string> ret = new List <string>(); foreach (string section in sections) { ret.Add(section); } return(ret); }
/// <summary> /// INIファイルのキー名一覧を取得 /// </summary> /// <param name="iSection">セクション名</param> /// <param name="iDefault">デフォルト文字列</param> /// <returns>INIファイルのキー名一覧</returns> public List <string> GetKeyList(string iSection, string iDefault = DEFAULT_STRING) { if (string.IsNullOrEmpty(iSection)) { return(new List <string>()); } byte[] b = new byte[MAX_BUFFER_SIZE]; uint length = IniFileUtil.GetPrivateProfileStringByByteArray(iSection, null, iDefault, b, (uint)b.Length, this.FileName); string[] keys = Encoding.Default.GetString(b, 0, (int)length - 1).Split('\0'); List <string> ret = new List <string>(); foreach (string key in keys) { ret.Add(key); } return(ret); }
/// <summary> /// 文字列を設定 /// </summary> /// <param name="iSection">セクション名</param> /// <param name="iKey">キー名</param> /// <param name="iValue">値</param> /// <returns>成功:True</returns> public bool SetString(string iSection, string iKey, string iValue) { uint res = IniFileUtil.WritePrivateProfileString(iSection, iKey, iValue, this.FileName); return(res != 0); }
public Settings() { ini = new IniFileUtil(IniFileName); Load(); }