GetPrivateProFileString系列文本API与注意事项

1.文本读写API
(1) 从文本中读取整型数据API:
UINT WINAPI GetPrivateProfileInt(LPCSTR lpAppName, LPCSTR lpKeyName, INT nDefault, LPCSTR lpFileName);

lpAppName: 指定字段名;
lpKeyName: 读取关键字名称;
nDefault: 默认返回的整型数据;
lpFileName: 文本路径名称;
返回值: 读取到的整型数据;
作用: 读取文本中指定关键字后面的整数数据,若没有读到数据,默认返回上面的nDefault值;

(2) 从文本中读取字符串数据API:
DWORD WINAPI GetPrivateProfileString(LPCSTR lpAppName, LPCSTR lpKeyName,
LPCSTR lpDefault, LPSTR lpReturnedString, DWORD nSize, LPCSTR lpFileName);

lpAppName: 指定字段名;
lpKeyName: 读取关键字名称;
lpDefault: 默认返回的字符串数据;
lpReturnedString: 接收数据的目标字符串;
nSize: 目标字符串的大小,这个长度一定要管够;
lpFileName: 文本路径名称;
作用:读取文本中指定关键字后面的字符串数据,若关键字段数据为空,默认读取上面的lpDefault值;

举例:读取下列文本中[MYSQL]字段里的"number"整数和"account"字符串;
在这里插入图片描述

TCHAR m_strPath[100] = _T("..\\bin\\NPE_FT.dat");
int m_iNumber;
TCHAR buf[500];

/*读取文本整型数据*/
m_iNumber = ::GetPrivateProfileInt(_T("MYSQL"), _T("number"), 0, m_strPath);

/*读取文本字符串数据*/
::GetPrivateProfileString(_T("MYSQL"), _T("account"), _T(""), buf, 500, m_strPath);

(3) 向文本中写入数据API(在文本打开情况下,是不能写入数据的!必须关闭文本才能写入!):
BOOL WINAPI WritePrivateProfileString(LPCSTR lpAppName, LPCSTR lpKeyName,
LPCSTR lpString, LPCSTR lpFileName);

lpAppName: 指定字段名;
lpKeyName: 写入关键字名称;
lpString: 写入的字符串数据;
lpFileName: 文本路径名称;
返回值: 写入成功返回TRUE,写入失败返回FALSE;
作用:向文本中指定关键字后面写入字符串数据lpString。

举例:在下列文本中[Test]字段的"age"和"name"关键字后面写入数据;
在这里插入图片描述

TCHAR m_strPath[100] = _T("..\\bin\\NPE_FT.dat");

::WritePrivateProfileString(_T("Test"), _T("age"), _T("10"), m_strPath);
::WritePrivateProfileString(_T("Test"), _T("name"), _T("hello world"), m_strPath);

用上面的读写文本API时需要了解的一些知识点:
; 注释写法

[字段名1]
关键字1=值
关键字2=值

[字段名2]
关键字3=值
关键字4=值

2.在VS中设置不同类型的相对路径
因为有一些奇怪的符号,CSDN文本编辑器打不出来,只能发图片了:
在这里插入图片描述

在这里插入图片描述
注意:以上两种方法所讲的相对路径文件夹如果不存在,系统会自动生成对应的文件夹,若相对路径文件夹已存在,则对其内部的任何文件都没有影响。

附加知识点:如何修改的exe文件名字:”属性”→”常规”→”目标文件名”
(1) 如果只给默认的exe文件名加后缀:在默认文件名后面直接加后缀,不需要特殊符号修饰;
(2) 如果要把exe名字全部修改:直接把默认的exe文件名删除,输入自己想要的文件名。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值