/// <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);
        }
Exemple #6
0
 public Settings()
 {
     ini = new IniFileUtil(IniFileName);
     Load();
 }
Exemple #7
0
 public Settings()
 {
     ini = new IniFileUtil(IniFileName);
     Load();
 }