这个是在C#读取配置文件ini的一钟方法,因为C#没有直接读取(VS2005好象有了)的类库,只好引用系统API.
//引用写出ini设置
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string val, string filePath);
//引用读入ini设置
[DllImport("kernel32")]
private static extern int GetPrivateProfileInt(string section, string key, int val, string filePath);
/*参数说明:section:INI文件中的段落;key:INI文件中的关键字;val:INI文件中关键字的数值;filePath:
INI文件的完整的路径和名称。 */
//引用读入ini设置
[DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section,string key, string def, StringBuilder retVal,
int size, string filePath);
/*参数说明:section:INI文件中的段落名称;key:INI文件中的关键字;def:无法读取时候时候的缺省数值;retVal:
* 读取数值;size:数值的大小;filePath:INI文件的完整路径和名称。 */
//写出ini设置vaule字符串键值
public void setProfile(string section, string key, string val, string filePath)
{
WritePrivateProfileString(section, key, val, filePath);
}
//写出ini设置的vaule整型键值
public void setValInt(string section, string key, int val, string filePath)
{
WritePrivateProfileString(section, key, val.ToString(), filePath);
}
//读入ini设置的vaule字符串键值
public string GetValString(string section, string key, string def, string filePath)
{
StringBuilder temp = new StringBuilder(512);//这个重要,不然返回不了字符串
int i = GetPrivateProfileString(section, key, def, temp, 512,filePath);
return temp.ToString();
}
//读入ini设置的整形键值
public int GetValInt(string section, string key, int def,string filePath)
{
return GetPrivateProfileInt(section, key, def,this.IniPath);
}
我还不会把键值中的中文取出来,希望那位大哥帮帮下我