实现对继承此基类的类以类名称为节点,将类属性成员保存到INI文件中。
using System;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Text;
namespace INIHelper
{
public abstract class IniBase
{
//写入ini. int类型
[DllImport("Kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string val, string filePatrh);
//读取ini. int类型
[DllImport("Kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
protected void INIWrite<T>(string section, string key, T value, string path)
{
WritePrivateProfileString(section, key, $"{value}", path);
}
protected string INIRead(string section, string key, string path)
{
StringBuilder temp = new StringBuilder(255);
GetPrivateProfileString(section, key, "", temp, 255, path);
return temp.ToString();
}
protected void INIDelete(string filePath)
{
System.IO.File.Delete(filePath);
}<