ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

C#自定义Ini文件操作类

2026/9/27 5:45:59 拓冰建站 浏览量
C#自定义Ini文件操作类 // INI文件操作类 class IniFileHelper { string strIniFilePath; // ini配置文件路径 // 返回0表示失败非0为成功 [DllImport(kernel32, CharSet CharSet.Auto)] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); // 返回取得字符串缓冲区的长度 [DllImport(kernel32, CharSet CharSet.Auto)] private static extern long GetPrivateProfileString(string section, string key, string strDefault, StringBuilder retVal, int size, string filePath); [DllImport(Kernel32.dll, CharSet CharSet.Auto)] public static extern int GetPrivateProfileInt(string section, string key, int nDefault, string filePath); /// summary /// 无参构造函数 /// /summary /// returns/returns public IniFileHelper() { this.strIniFilePath Directory.GetCurrentDirectory() \\Properties\\sysconfig.ini; } /// summary /// 有参构造函数 /// /summary /// param namestrIniFilePathini配置文件路径/param /// returns/returns public IniFileHelper(string strIniFilePath) { if (strIniFilePath ! null) { this.strIniFilePath strIniFilePath; } } /// summary /// 获取ini配置文件中的字符串 /// /summary /// param namesection节名/param /// param namekey键名/param /// param namestrDefault默认值/param /// param nameretVal结果缓冲区/param /// param namesize结果缓冲区大小/param /// returns成功true,失败false/returns public bool GetIniString(string section, string key, string strDefault, StringBuilder retVal, int size) { long liRet GetPrivateProfileString(section, key, strDefault, retVal, size, strIniFilePath); return (liRet 1); } //或者 public string GetIniString(string section, string key) { StringBuilder temp new StringBuilder(255); long i GetPrivateProfileString(section, key, , temp, 255, strIniFilePath); return temp.ToString(); } /// summary /// 获取ini配置文件中的整型值 /// /summary /// param namesection节名/param /// param namekey键名/param /// param namenDefault默认值/param /// returns/returns public int GetIniInt(string section, string key, int nDefault) { return GetPrivateProfileInt(section, key, nDefault, strIniFilePath); } /// summary /// 往ini配置文件写入字符串 /// /summary /// param namesection节名/param /// param namekey键名/param /// param nameval要写入的字符串/param /// returns成功true,失败false/returns public bool WriteIniString(string section, string key, string val) { long liRet WritePrivateProfileString(section, key, val, strIniFilePath); return (liRet ! 0); } /// summary /// 往ini配置文件写入整型数据 /// /summary /// param namesection节名/param /// param namekey键名/param /// param nameval要写入的数据/param /// returns成功true,失败false/returns public bool WriteIniInt(string section, string key, int val) { return WriteIniString(section, key, val.ToString()); } }