WritePrivateProfileString等读写.ini配置文件
2024-10-16 01:15:19
配置文件中经常用到ini文件,在VC中其函数分别为:
写入.ini文件:
BOOL WritePrivateProfileString(
LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名 LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名 LPCTSTR lpString, // 键值,也就是数据 LPCTSTR lpFileName // INI文件的路径
);
读取.ini文件:
DWORD GetPrivateProfileString(
LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名 LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名 LPCTSTR lpDefault, // 如果lpReturnedString为空,则把个变量赋给lpReturnedString LPTSTR lpReturnedString, // 存放键值的指针变量,用于接收INI文件中键值(数据)的接收缓冲区 DWORD nSize, // lpReturnedString的缓冲区大小 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文件:
LPTSTR lpPath = new char[MAX_PATH]; strcpy(lpPath, "D:\\IniFileName.ini"); WritePrivateProfileString("LiMing", "Sex", "Man", lpPath);
WritePrivateProfileString("LiMing", "Age", "", lpPath); WritePrivateProfileString("Fangfang", "Sex", "Woman", lpPath);
WritePrivateProfileString("Fangfang", "Age", "", lpPath); delete [] lpPath; INI文件如下: [LiMing]
Sex=Man
Age=
[Fangfang]
Sex=Woman
Age= 读INI文件: LPTSTR lpPath = new char[MAX_PATH];
LPTSTR LiMingSex = new char[];
int LiMingAge;
LPTSTR FangfangSex = new char[];
int FangfangAge; strcpy(lpPath, "..\\IniFileName.ini"); GetPrivateProfileString("LiMing", "Sex", "", LiMingSex, , lpPath);
LiMingAge = GetPrivateProfileInt("LiMing", "Age", , lpPath); GetPrivateProfileString("Fangfang", "Sex", "", FangfangSex, , lpPath);
FangfangAge = GetPrivateProfileInt("Fangfang", "Age", , lpPath); delete [] lpPath;
最新文章
- 使用TSQL查询和更新 JSON 数据
- 【Java EE 学习 69 中】【数据采集系统第一天】【SSH框架搭建】
- c#运算表达式
- wordpress后台404页面
- codeblocks AStyle修改格式和快捷键
- hdu 5427 A problem of sorting 水题
- 练习题之Wait/Notify
- Github 上的 iOS 开源项目
- iOS 开发 UI 搭建心得(一)—— 驾驭 StoryBoard
- 自行修改android.jar使其包含隐藏api
- bzoj 4830: [Hnoi2017]抛硬币 [范德蒙德卷积 扩展lucas]
- 在VS2013、VS2015下如何配置DirectX SDK的开发环境
- 《http权威指南》读书笔记13
- Python:Day29 信号量、条件变量
- 没有上司的舞会|codevs1380|luoguP1352|树形DP|Elena
- linux 串口驱动(二)初始化 【转】
- 错误/异常:java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind;的解决方法
- 世界时区和Java时区详解
- C++面向对象类的实例题目十二
- Python:数字的格式化输出