C++ Windows读写INI文件
2015-12-13 13:52
591 查看
C++ Windows读写INI文件
一:将信息写入到INI文件
所用函数:
BOOL WritePrivateProfileString(
LPCSTR lpAppName,
LPCSTR lpKeyName,
LPCSTR lpString,
LPCSTR lpFileName)
参数说明:
LPCSTR lpAppName
ini文件中字段名
LPCSTR lpKeyName 是对应字段(lpAppName
)下的key名,类似C++中的变量
LPCSTR lpString 是对应键名下的键值,必须为LPCSTR或CString类型
LPCSTR lpFileName 是ini文件的完整路径
实例:
CString strName ,strTemp;
int iAge;
strName = "李四";
iAge = 18;
WritePrivateProfileString("StudentInfo","Name",strName,"d:\\stu\\student.ini");
//此时ini文件中会出现
//[StudentInfo]
//Name=李四
strTemp.Format("%d",iAge);
WritePrivateProfileString("StudentInfo","Age",strTemp,"d:\\stu\\student.ini");
二:将ini文件中的内容读入内存
读CString类型所用函数:
DWORD GetPrivateProfileString(
LPCSTR lpAppName,
LPCSTR lpKeyName,
LPCSTR lpDefault,
LPSTR lpReturnedString,
DWORD nSize,
LPCSTR lpFileName
);
参数说明:
LPCSTR lpAppName ini文件中字段名
LPCSTR lpKeyName 是对应字段(lpAppName
)下的key名,类似C++中的变量
LPCSTR lpDefault 如果ini文件中没有对应所给的 lpAppName和lpKeyName 值,将此值赋给变量
LPSTR lpReturnedString 接收INI文件中值的CString对象,即目的缓存器
DWORD nSize 目的缓存器的大小
LPCSTR lpFileName 是ini文件的完整路径
实例:
CString stuName;
int stuAge;
GetPrivateProfileString("StudentInfo","Name","无",stuName.GetBuffer(MAX_PATH),MAX_PATH,"d:\\stu\\student.ini");
注:在使用完GetBuffer()后要调用ReleaseBufer()
//执行后stuName的值为李四,如果参数1,2ini文件中无,stuName值为无。
读整形所用函数:
UINT
GetPrivateProfileInt(
LPCSTR lpAppName,
LPCSTR lpKeyName,
INT nDefault,
LPCSTR lpFileName
);
stuAge = GetPrivateProfileInt("StudentInfo","Age",10,"d:\\stu\\student.ini");
注:在Windows下WritePrivateProfileString、GetPrivateProfileString、GetPrivateProfileInt都是受字符集所影响的,如果你按照本例操作,出现函数参数类型问题,请将vs中项目的属性->配置属性中的字符集改为对应的字符集(unicode/多字节字符集)即可。
一:将信息写入到INI文件
所用函数:
BOOL WritePrivateProfileString(
LPCSTR lpAppName,
LPCSTR lpKeyName,
LPCSTR lpString,
LPCSTR lpFileName)
参数说明:
LPCSTR lpAppName
ini文件中字段名
LPCSTR lpKeyName 是对应字段(lpAppName
)下的key名,类似C++中的变量
LPCSTR lpString 是对应键名下的键值,必须为LPCSTR或CString类型
LPCSTR lpFileName 是ini文件的完整路径
实例:
CString strName ,strTemp;
int iAge;
strName = "李四";
iAge = 18;
WritePrivateProfileString("StudentInfo","Name",strName,"d:\\stu\\student.ini");
//此时ini文件中会出现
//[StudentInfo]
//Name=李四
strTemp.Format("%d",iAge);
WritePrivateProfileString("StudentInfo","Age",strTemp,"d:\\stu\\student.ini");
二:将ini文件中的内容读入内存
读CString类型所用函数:
DWORD GetPrivateProfileString(
LPCSTR lpAppName,
LPCSTR lpKeyName,
LPCSTR lpDefault,
LPSTR lpReturnedString,
DWORD nSize,
LPCSTR lpFileName
);
参数说明:
LPCSTR lpAppName ini文件中字段名
LPCSTR lpKeyName 是对应字段(lpAppName
)下的key名,类似C++中的变量
LPCSTR lpDefault 如果ini文件中没有对应所给的 lpAppName和lpKeyName 值,将此值赋给变量
LPSTR lpReturnedString 接收INI文件中值的CString对象,即目的缓存器
DWORD nSize 目的缓存器的大小
LPCSTR lpFileName 是ini文件的完整路径
实例:
CString stuName;
int stuAge;
GetPrivateProfileString("StudentInfo","Name","无",stuName.GetBuffer(MAX_PATH),MAX_PATH,"d:\\stu\\student.ini");
注:在使用完GetBuffer()后要调用ReleaseBufer()
//执行后stuName的值为李四,如果参数1,2ini文件中无,stuName值为无。
读整形所用函数:
UINT
GetPrivateProfileInt(
LPCSTR lpAppName,
LPCSTR lpKeyName,
INT nDefault,
LPCSTR lpFileName
);
stuAge = GetPrivateProfileInt("StudentInfo","Age",10,"d:\\stu\\student.ini");
注:在Windows下WritePrivateProfileString、GetPrivateProfileString、GetPrivateProfileInt都是受字符集所影响的,如果你按照本例操作,出现函数参数类型问题,请将vs中项目的属性->配置属性中的字符集改为对应的字符集(unicode/多字节字符集)即可。
相关文章推荐
- C语言 makefile文件与头文件的写法。
- c++编译 extra qualification '类名' on member '变量名' error
- 博弈总结
- [c++ 温故知新]类内char* 指针内存分配长度
- 【ThinkingInC++】2、输入和输出流
- 编C语言单元测试框架CUnit方法库
- C++的string二三事
- 实战c++中的string系列--string与char*、const char *的转换(data() or c_str())
- 实战c++中的string系列--string与char*、const char *的转换(data() or c_str())
- C++ Map容器实例
- c++函数
- c++中设计可以统计自身对象的类(1)
- VS提示C++某些头文件或函数已经过期无法使用
- c语言学习笔记之static和extern关键字
- 面试总结6--C++基础问题Part2
- vc++中几个常用的数学函数
- c语言学习笔记之文件包含
- c语言学习笔记之条件编译
- c语言学习笔记之宏定义
- 书写新CPP的好习惯(VC&gcc)