读写ini文件需要引入系统接口
//首先,引入命名空间
using System.Runtime.InteropServices;
在修改系统接口:
string path=@"d:config.ini";//带路径的文件名

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


/**//// <summary>
/// 创建ini文件
/// </summary>
/// <param name="Section">ini文件的标题</param>
/// <param name="Key">键</param>
/// <param name="Value">键值</param>
private void IniWriteValue(string Section, string Key, string Value)

...{
WritePrivateProfileString(Section, Key, Value, this.path);
}

/**//// <summary>
/// 读ini文件
/// </summary>
/// <param name="Section"></param>
/// <param name="Key"></param>
/// <returns></returns>
public string IniReadValue(string Section, string Key)

...{
StringBuilder temp = new StringBuilder(255);

int i = GetPrivateProfileString(Section, Key, "", temp, 255, this.path);

return temp.ToString();

}
示例:
private void btnCreateIni_Click(object sender, EventArgs e)

...{

string[] configIniKeys = new string[6]...{
"企业代码",
"服务代码",
"登陆账号",
"登陆密码",
"IP",
"端口"};

string[] configIniValues = new string[6]...{
"1001",
"13826128578",
"chenrong",
"1234",
"10.244.14.138",
"8080"};

if (!File.Exists(path))

...{
using (FileStream fs = File.Create(path))

...{
fs.Close();
}
}
try

...{
for (int i = 0; i < configIniKeys.Length; i++)

...{
IniWriteValue("短信网关配置信息", configIniKeys[i], configIniValues[i]);
}
MessageBox.Show("ini文件生成成功!", "成功");
}
catch (Exception ex)

...{
MessageBox.Show(ex.ToString());
}
}
生成的ini文件如下:
[短信网关配置信息]
企业代码=1001
服务代码=13826128578
登陆账号=chenrong
登陆密码=1234
IP=10.244.14.138
端口=8080