using System.IO; using System.Runtime.InteropServices; using System.Text; namespace SLC1_N { public class ConfigINI { public string inipath; [DllImport("kernel32")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath); /// /// 构造方法 /// /// 文件路径 public ConfigINI(string Folder, string INIPath) { inipath = System.AppDomain.CurrentDomain.BaseDirectory + "Config\\" + Folder + "\\"; if (!Directory.Exists(inipath)) { Directory.CreateDirectory(inipath); } inipath += INIPath; } /// /// 写入INI文件 /// /// 项目名称(如 [TypeName] ) /// 键 /// 值 public void IniWriteValue(string Section, string Key, string Value) { WritePrivateProfileString(Section, Key, Value, this.inipath); } /// /// 读出INI文件 /// /// 项目名称(如 [TypeName] ) /// 键 public string IniReadValue(string Section, string Key) { if (ExistINIFile()) { StringBuilder temp = new StringBuilder(500); int i = GetPrivateProfileString(Section, Key, "", temp, 500, this.inipath); return temp.ToString(); } return null; } /// /// 验证文件是否存在 /// /// 布尔值 public bool ExistINIFile() { return File.Exists(inipath); } } }