/// <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); }