使用win api 读写 ini配置文件
来源:互联网 发布:厦门seo咨询公司 编辑:程序博客网 时间:2024/04/28 23:59
游戏或者其他应用程序需要很多配置信息,比如:窗口的长宽,是否全屏显示。所以每一个游戏都支持配置文件的读取以及写入。
而ini文件因为其结构简单易懂,而被广泛应用。记得在实习培训的时候,python作业要求自己实现读取ini文件。python对字符串的操作很强大,当时就考虑在自己的C++程序中加入这个功能。今天在看代码的过程中惊喜的发现了两个api函数,GetPrivateProfileString和 WritePrivateProfileString分别用于读/写 ini文件。
1.读ini文件:
DWORD GetPrivateProfileString(
LPCTSTR lpAppName,
LPCTSTR lpKeyName,
LPCTSTR lpDefaut,
LPSTR lpReturnedString,
DWORD nSize,
LPCTSTR lpFileName);
lpAppName 参数是ini文件中section的名字,也就是[]之间的部分
DWORD GetPrivateProfileInt(
LPCTSTR lpAppName,
LPCTSTR lpKeyName,
INT lpDefault,
LPCTSTR lpFileName);
2. 写ini文件
BOOL WritePrivateProfileString(
LPCTSTR lpAppName,
LPCTSTR lpKeyName,
LPCTSTR lpString,
LPCTSTR lpFileName);
3. expamle:
WritePrivateProfileString("screen", "width", "800", "./main.ini");
WritePrivateProfileString("screen", "height", "600", "./main.ini");
WritePrivateProfileString("config", "title", "ini_test","./main.ini");
char title[256];
int width = GetPrivateProfileInt("screen", "width", 800, "./main.ini");
int height = GetPrivateProfileInt("screen", "height", 600, "./main.ini");
GetPrivateProfileString("config", "title", "default", title, sizeof(title), "./main.ini");
4. 说明:
有一点解释一下,最后一个参数lpFileName所说的完整文件路径,并不是指绝对路径。可以使用相对路径和绝对路径。之所以说是“完整”是与只写出文件名区别的。如:“./file.ini”和“file.ini前者是完整的路径,而后者是文件名。
5. 其他操作ini文件的函数
GetPrivateProfileInt()
GetPrivateProfileSection()
GetPrivateProfileSectionNames()
GetPrivateProfileString()
GetPrivateProfileStruct()
GetProfileInt()
GetProfileSection()
GetProfileString()
WritePrivateProfileSection()
WritePrivateProfileString()
WritePrivateProfileStruct()
WriteProfileSection()
WriteProfileString()
- 使用win api 读写 ini配置文件
- C# API读写ini配置文件
- 使用C#读写ini配置文件
- VB 使用API读写INI
- VC读写ini文件的方法(win api)
- QT 使用QSettings 读写ini配置文件
- 使用IniEditor读写INI类型配置文件
- QT 使用QSettings读写ini配置文件
- 使用IniEditor读写INI类型配置文件
- 使用IniEditor读写INI类型配置文件
- 使用IniEditor读写INI类型配置文件
- 如何使用Python3读写INI配置文件
- QT 使用QSettings 读写ini配置文件
- 使用API函数操作ini配置文件
- ini配置文件读写
- 读写配置文件 ini
- C#读写INI配置文件
- C++读写ini配置文件
- 文件夹加密
- 我开通了CSDN
- 测试驱动开发-实用指南2
- 我开通了CSDN
- C#实现文件管理器
- 使用win api 读写 ini配置文件
- java在AIX使用GBK字符集
- Web性能测试和CC攻击和方法和防范
- 注意语句顺序 防止Servlet Request Response乱码
- 性能测试小结
- 嗯 是这样
- JQuery常用选择器
- Binomial Heap
- Chromium本地化的方法