c++关于读ini配置文件函数GetPrivateProfileInt使用

0.环境

windows10
vs2015专业版

1.程序demo

#include "windows.h"
#include "tchar.h"
#include <iostream>

bool g_1_1Mode;
bool g_1_2Mode;
bool g_2Mode;

using namespace std;

int main() 
{
	g_1_1Mode = GetPrivateProfileInt(_T("1Setting"),_T("1_1Mode"),1,_T("data\\profile.ini"));
	g_1_2Mode = GetPrivateProfileInt(_T("1Setting"), _T("1_2Mode"), 1, _T("data\\profile.ini"));
	g_2Mode = GetPrivateProfileInt(_T("2Setting"), _T("2Mode"), 1, _T("data\\profile.ini"));

	cout << "=============================ini file test begin=============================\n" << endl;
	if (g_1_1Mode) {
		cout <<"\t\t\t\t this is '1_1Mode'!" << endl;
	}
	if (g_1_2Mode) {
		cout << "\t\t\t\t this is '1_2Mode'!" << endl;
	}
	if (g_2Mode) {
		cout << "\t\t\t\t this is '2Mode'!" << endl;
	}
	cout << "\n=============================ini file test end===============================\n" << endl;

	system("PAUSE");
	return 0;

}

文件准备:

 

其中第一个配置1Setting中,有两个属性;第二个2Setting中,有一个属性;在ini文件中,”;“是用来注释。

运行输出结果:

 

2.GetPrivateProfileInt使用讲解

g_1_1Mode = GetPrivateProfileInt(_T("1Setting"),_T("1_1Mode"),1,_T("data\\profile.ini"));

 参数1:是ini文件[]中的内容,即配置文件中的一种配置;

 参数2:是ini文件对应配置1Setting下的1_1Mode属性,在ini文件中,赋值用等号;

 参数3:是如果没有该文件或者该属性,默认值设置;

 参数4:是包含1Setting设置下1_1Mode属性的,ini文件的路径,这里设置的相对路径,即当前函数所在文件路径下data目录下的profile.ini文件;

 

3.使用ini配置文件的优势

在实际工程中,一般会给一个可执行程序demo给别人,那么我们智能编译一次,如何配置已经在程序中写固定了,就很难修改了。这里,可以将刚刚iniDemo.cpp同目录下的data/profile.ini,整个的复制到exe可执行文件的目录下。这里来实验一下:

运行exe:

 

4.最终的文件结构

iniDemo
│  
│  iniDemo.sln
│  
├─iniDemo
│  │  iniDemo.cpp
│  │  iniDemo.vcxproj
│  │  iniDemo.vcxproj.filters
│  │  
│  └─data
│          profile.ini
│          
└─x64
    └─Release
        │  iniDemo.exe
        │  
        └─data
                profile.ini
                

iniDemo工程可以在iniDemo-github下载。

 

5.参考

1.C++ - _T含义 C++语言中“_T”是什么意思?

2.两种方法上传本地文件到github

3.windows下如何打印出文件夹目录结构,并写入txt

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

聿默

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值