string iniPath = Application.StartupPath + "\\Configurations.ini";//ini文件的位置
#region 声明读写INI文件的API函数
//参数说明:section:INI文件中的段落;key:INI文件中的关键字;val:INI文件中关键字的数值;filePath:INI文件的完整的路径和名称。
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
//参数说明:section:INI文件中的段落名称;key:INI文件中的关键字;def:无法读取时候时候的缺省数值;retVal:读取数值;size:数值的大小;filePath:INI文件的完整路径和名称。
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string defVal, 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);
#endregion
private void Form1_Load(object sender, EventArgs e)
{
LoadingCheck();//保证ini文件存在
}
private void LoadingCheck()//保证ini文件存在
{
if (File.Exists(iniPath) == false)
{
FileStream objFS = new FileStream(iniPath, FileMode.Create);
objFS.Close();
}
}
public string IniReadValue(string section, string key)//读取INI文件
{
StringBuilder temp = new StringBuilder(255);
int i = GetPrivateProfileString(section, key, "", temp, 255, iniPath);
return temp.ToString();
}
private void button1_Click(object sender, EventArgs e)//写
{
WritePrivateProfileString("Section1", "Key1", "value1", iniPath);
}
private void button2_Click(object sender, EventArgs e)
{
textBox1.Text = IniReadValue("Section1","Key1");//读
}