对ini文件读写我们可以使用Kernel32.dll中的WritePrivateProfileString(写入),GetPrivateProfileString(读入字符串),GetPrivateProfileInt(读入整型值)三个方法。下面我介绍着三个使用WINAPI进行读取写入配置文件的方法
一.将信息写入.INI文件中.
1.所用的WINAPI函数为:WritePrivateProfileString
Code
- [DllImport("Kernel32.dll")]
- publicstaticexternboolWritePrivateProfileString(stringstrAppName,
- stringstrKeyName,
- stringstrString,
- stringstrFileName);
其中各参数的意义:
stringstrAppName,是INI文件中的一个字段名.
stringstrKeyName,是strAppName下的一个键名,通俗讲就是变量名.
stringstrString,是键值,也就是变量的值(string类型的)
stringstrFileName是完整的INI文件路径名.
2.具体使用方法:设我有一个网页刷新器.我要保存我设置的网页(URL),和间隔时间(time)
- WritePrivateProfileString("Settings","Url","http://wenti.cnblogs.com","c:\\config.ini");
- WritePrivateProfileString("Settings","Time","20","c:\\config.ini");
保存的ini文件中的内容如下:
- [Settings]
- Url=http://wenti.cnblogs.com
- Time=20
二.将信息从INI文件中读入程序中的变量.
1.所用的WINAPI函数原型为:
Code
- [DllImport("Kernel32.dll")]
- publicstaticexternintGetPrivateProfileString(stringstrAppName,
- stringstrKeyName,
- stringstrDefault,
- StringBuildersbReturnString,
- intnSize,
- stringstrFileName);
其中各参数的意义:
前二个参数与WritePrivateProfileString中的意义一样.
strDefault:如果INI文件中没有前两个参数指定的字段名或键名,则将此值赋给变量.
strReturnedString:接收INI文件中的值的string对象,即目的缓存器.
nSize:目的缓存器的大小.
strFileName:是完整的INI文件路径名.
2.具体使用方法:现要将上一步中写入的信息读入程序中.
- StringBuildersb=newStringBuilder(256);
- GetPrivateProfileString("Settings","Url","http://",sb,256,c:\\config.ini");
- GetPrivateProfileString("Settings","Time","10",sb,256,c:\\config.ini");
执行后sb的值为:" 3.读入整型值要用另一个WINAPI函数: Code 这里的参数意义与上相同.使用方法也相同。C#使用WINAPI进行读取写入配置文件就介绍到这里。