Windows中如何读写INI文件

摘要:
1.INI文件写入函数BOOLWritePrivateProfileString(LPCTSTRlpAppName,LPCTSTRlpKeyName,LPCTSTRlpString,LPCTSTRlpFileName);lpAppName:INI文件中的一个字段名,也可以有多个字段名,通过这个字段名才能继续去操作我们的键值lpKeyName:字段名下的一个键值,我们写入的数据会赋值与它lpStri

1.INI文件写入函数

BOOL WritePrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName,LPCTSTR lpString, LPCTSTR lpFileName);

lpAppName:INI文件中的一个字段名,也可以有多个字段名,通过这个字段名才能继续去操作我们的键值

lpKeyName:字段名下的一个键值,我们写入的数据会赋值与它

lpString:我们要向INI文件中写入的数据

lpFileName:INI文件的路径

2.INI文件读取函数

DWORD GetPrivateProfileString(LPCTSTR lpAppName, LPCTSTR lpKeyName,LPCTSTR lpDefault, LPTSTR lpReturnedString,DWORD nSize, LPCTSTR lpFileName);

lpAppName:字段名

lpKeyName:字段名下的一个键值 

lpDefault:如果lpReturnedString为空,则把个变量的值赋给lpReturnedString,也就是通常我们所说的默认值

lpReturnedString:存放键值数据的指针变量,用于接受INI文件中的键值下的数据,作为接受缓存区使用

nSize:lpReturnedString的缓冲区内存大小

lpFileName:INI文件的路径

3.接下来就是具体操作了,代码如下,已验证们可以正常读写

1 #include <iostream>
2 #include <Windows.h>
3 #include <Shlwapi.h>
4 #include <tchar.h>
5 
6 #pragma comment (lib, "Shlwapi.lib")
7 
8 #define count_of(exp)  (sizeof(exp) / sizeof(exp[0]))
9 
10 //INI文件名称
11 #define STUDENT_INFO   _T("StudentInfo.ini")
12 
13 //字节名
14 #define SECTION_NAME   _T("INFO")
15 
16 //键名
17 #define STUDENT_NAME       _T("name")
18 #define STUDENT_AGE        _T("age")
19 #define STUDENT_SEX        _T("sex")
20 
21 /*
22 路径:ini文件写到当前执行文件的目录下
23 */
24 intmain()
25 {
26     //获取当前执行文件的上一级文件的路径
27     WCHAR szFilePath[MAX_PATH] = { 0};
28 GetModuleFileName(NULL, szFilePath, MAX_PATH);
29 PathRemoveFileSpec(szFilePath);
30 
31     //设置INI文件的路径
32     WCHAR szINIFilePath[MAX_PATH] = { 0};
33 PathCombine(szINIFilePath, szFilePath, STUDENT_INFO);
34     
35     //向INI文件中写入信息
36     WritePrivateProfileString(SECTION_NAME, STUDENT_NAME, _T("Jack"), szINIFilePath);
37     WritePrivateProfileString(SECTION_NAME, STUDENT_AGE, _T("18"), szINIFilePath);
38     WritePrivateProfileString(SECTION_NAME, STUDENT_SEX, _T("Man"), szINIFilePath);
39 
40     //从INI文件中获取信息
41     WCHAR szName[25] = { 0};
42     WCHAR szAge[25] = { 0};
43     WCHAR szSex[25] = { 0};
44 
45     GetPrivateProfileString(SECTION_NAME, STUDENT_NAME, _T(""), szName, count_of(szName), szINIFilePath);
46     GetPrivateProfileString(SECTION_NAME, STUDENT_AGE,  _T(""), szAge, count_of(szName), szINIFilePath);
47     GetPrivateProfileString(SECTION_NAME, STUDENT_SEX,  _T(""), szSex, count_of(szName), szINIFilePath);
48 
49 
50 
51     system("pause");
52 
53     return 0;
54 }

INI文件信息:

Windows中如何读写INI文件第1张

免责声明:文章转载自《Windows中如何读写INI文件》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇手把手教你写网络爬虫(1):网易云音乐歌单Java的四种引用:强引用、软引用,弱引用和虚引用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

yaml,json,ini这三种格式用来做配置文件优缺点

适合人类编写:ini > toml > yaml > json > xml > plist可以存储的数据复杂度:xml > yaml > toml ~ json ~ plist > ini 作者:赵扶摇链接:https://www.zhihu.com/question/41253282/answer/1198...

DM-INI参数配置

配置文件 前言 每创建一个DM数据库,就会自动生成 dm.ini 文件。dm.ini 是 DM 数据库启动所必须的配置文件,通过配置该文件可以设置 DM 数据库服务器的各种功能和性能选项,当然还有其它参数配置文件,归档参数文件dmarch.ini及配置集群的参数文件dmmal.ini、dmwatcher.ini、dmmpp.ini、dmtimer.ini、...

MongoDB文档操作(5)

添加文档 语法: db.集合名.insert({k1:"v1", k2:"v2"....}) 注意: (1)文档就是键值对,数据类型是BSON格式,支持的值更加丰富。 比如:db.集合名.insert({name:"bashlog", spc:{weight:100, address:"henan"}}) (2)在添加的文档里面,都有一个'_id'的键,...

post请求body格式

在PostMan中用Post方式,Body有form-data,x-www-form-urlencoded,raw,binary四种。 其中raw又分以下7种。 现在来区分一下: form-data是http请求中的multipart/form-data,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开。既可以上传键值对,也可以上传文件。当上传的...

KVC中setValuesForKeysWithDictionary

从字典映射到一个对象,这是KVC中的一个方法所提供的,这个方法就是 setValuesForKeysWithDictionary: ,非常好用,不需要你来一一的给对象赋值而直接从字典初始化即可,但用的不好会经常崩溃,本教程就来讨论这些使用的细节. 首先,先初始化一个字典,如下所示: -------------------------------------...

reg文件编写规则

reg文件编写规则 首先新建一个文本文档,并将文件后缀的.txt改为.reg,然后右键编辑,这样就可以开始编写注册表文件了。 分号(;)后面的内容是注释,导入时会忽略这些内容。 文件的开头 Windows Registry Editor Version 5.00。并与后面的内容隔一行,文件最后还要有一个回车。 新建一个项: [HKEY_LOCAL_MACH...