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