using System.Runtime.InteropServices; using System.Text; namespace Sai.Toolkit.Core.Helpers; public class IniHelper { public IniHelper(string iniPath) { path = iniPath; } public string path; /// /// 删除ini文件下所有段落 /// public void ClearAllSection() { IniWriteValue(null, null, null); } /// /// 删除ini文件下personal段落下的所有键 /// /// public void ClearSection(string section) { IniWriteValue(section, null, null); } /// /// 读取INI文件 /// /// /// /// public string IniReadValue(string section, string key) { var temp = new StringBuilder(255); var i = GetPrivateProfileString(section, key, "", temp, 255, path); return temp.ToString(); } public byte[] IniReadValues(string section, string key) { var temp = new byte[255]; var i = GetPrivateProfileString(section, key, "", temp, 255, path); return temp; } /// /// 写INI文件 /// /// /// /// public void IniWriteValue(string section, string key, string value) { WritePrivateProfileString(section, key, value, path); } [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath); [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string defVal, byte[] retVal, int size, string filePath); [DllImport("kernel32")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); }