您的位置:首页 > 其它

WritePrivateProfileString等读写.ini配置文件

2013-01-21 09:38 363 查看
配置文件中经常用到ini文件,在VC中其函数分别为:

写入.ini文件:

[cpp]
view plaincopyprint?

BOOL WritePrivateProfileString(

LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名

LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名

LPCTSTR lpString, // 键值,也就是数据

LPCTSTR lpFileName // INI文件的路径

);

BOOL WritePrivateProfileString(
LPCTSTR lpAppName,  // INI文件中的一个字段名[节名]可以有很多个节名

LPCTSTR lpKeyName,  // lpAppName 下的一个键名,也就是里面具体的变量名

LPCTSTR lpString,   // 键值,也就是数据

LPCTSTR lpFileName  // INI文件的路径
);


读取.ini文件:

[cpp]
view plaincopyprint?

DWORD GetPrivateProfileString(

LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名

LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名

LPCTSTR lpDefault, // 如果lpReturnedString为空,则把个变量赋给lpReturnedString

LPTSTR lpReturnedString,
// 存放键值的指针变量,用于接收INI文件中键值(数据)的接收缓冲区

DWORD nSize, // lpReturnedString的缓冲区大小

LPCTSTR lpFileName // INI文件的路径

);

DWORD GetPrivateProfileString(
LPCTSTR lpAppName,        // INI文件中的一个字段名[节名]可以有很多个节名

LPCTSTR lpKeyName,        // lpAppName 下的一个键名,也就是里面具体的变量名

LPCTSTR lpDefault,        // 如果lpReturnedString为空,则把个变量赋给lpReturnedString

LPTSTR lpReturnedString,  // 存放键值的指针变量,用于接收INI文件中键值(数据)的接收缓冲区

DWORD nSize,            // lpReturnedString的缓冲区大小

LPCTSTR lpFileName        // INI文件的路径
);


读取整形值:(返回值为读到的整)

[cpp]
view plaincopyprint?

UINT GetPrivateProfileInt(

LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名

LPCTSTR lpKeyName,
// lpAppName 下的一个键名,也就是里面具体的变量名
INT nDefault, // 如果没有找到指定的数据返回,则把个变量值赋给返回值

LPCTSTR lpFileName // INI文件的路径

);

UINT GetPrivateProfileInt(
LPCTSTR lpAppName,  // INI文件中的一个字段名[节名]可以有很多个节名
LPCTSTR lpKeyName,  // lpAppName 下的一个键名,也就是里面具体的变量名
INT nDefault,       // 如果没有找到指定的数据返回,则把个变量值赋给返回值

LPCTSTR lpFileName  // INI文件的路径

);


读写INI文件时相对路径和绝对路径都可以,根据实际情况选择

"..\\IniFileName.ini" // 这样的为相对路径

"D:\\IniFileName.ini" // 这样的为绝对路径

MAX_PATH:是微软最大路径占的字节所设的宏

例子:

写INI文件:

[cpp]
view plaincopyprint?

LPTSTR lpPath =
new char[MAX_PATH];

strcpy(lpPath, "D:\\IniFileName.ini");

WritePrivateProfileString("LiMing",
"Sex", "Man", lpPath);

WritePrivateProfileString("LiMing",
"Age", "20", lpPath);

WritePrivateProfileString("Fangfang",
"Sex", "Woman", lpPath);

WritePrivateProfileString("Fangfang",
"Age", "21", lpPath);

delete [] lpPath;

INI文件如下:

[LiMing]
Sex=Man
Age=20
[Fangfang]
Sex=Woman
Age=21

读INI文件:

LPTSTR lpPath =
new char[MAX_PATH];

LPTSTR LiMingSex = new
char[6];
int LiMingAge;

LPTSTR FangfangSex =
new char[6];

int FangfangAge;

strcpy(lpPath, "..\\IniFileName.ini");

GetPrivateProfileString("LiMing",
"Sex", "", LiMingSex, 6, lpPath);

LiMingAge = GetPrivateProfileInt("LiMing",
"Age", 0, lpPath);

GetPrivateProfileString("Fangfang",
"Sex", "", FangfangSex, 6, lpPath);

FangfangAge = GetPrivateProfileInt("Fangfang",
"Age", 0, lpPath);

delete [] lpPath;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: