WritePrivateProfileString、GetPrivateProfileString 读写配置文件
WritePrivateProfileString 写配置文件
BOOL WINAPI WritePrivateProfileString(
_In_ LPCTSTR lpAppName,
_In_ LPCTSTR lpKeyName,
_In_ LPCTSTR lpString,
_In_ LPCTSTR lpFileName
);
参数:
lpAppName:
要复制字符串的部分的名称。如果该部分不存在,则创建它。该部分的名称与大小写无关; 字符串可以是大写和小写字母的任意组合。
lpKeyName:
与字符串关联的键的名称。如果该键在指定的部分不存在,则创建它。如果此参数为NULL,则整个部分(包括该部分中的所有条目)将被删除。
lpString:
一个零结尾的字符串写入文件。如果此参数为NULL,则lpKeyName参数指向的键将被删除。
lpFileName:
初始化文件的名称。如果文件是使用Unicode字符创建的,则该函数将Unicode字符写入该文件。否则,函数写入ANSI字符。
返回值:
如果函数成功将字符串复制到初始化文件,则返回值不为零。如果函数失败,或者刷新最近访问的初始化文件的缓存版本,返回值为零。要获取扩展错误信息,请调用 GetLastError。
注意:
初始化文件中的一个部分必须具有以下形式:
[section]
key=string
.
.
.
如果lpFileName参数不包含文件的完整路径和文件名, WritePrivateProfileString会在Windows目录中搜索该文件。如果该文件不存在,则此功能将在Windows目录中创建该文件。
如果lpFileName包含完整路径和文件名,并且该文件不存在,则 WritePrivateProfileString将创建该文件。指定的目录必须已经存在。
GetPrivateProfileString 读取配置文件
DWORD WINAPI GetPrivateProfileString(
_In_ LPCTSTR lpAppName,
_In_ LPCTSTR lpKeyName,
_In_ LPCTSTR lpDefault,
_Out_ LPTSTR lpReturnedString,
_In_ DWORD nSize,
_In_ LPCTSTR lpFileName
);
参数:
lpAppName [in]
包含密钥名称的部分的名称。如果此参数为NULL,则 GetPrivateProfileString函数将文件中的所有段名复制到提供的缓冲区。
lpKeyName [in]
要检索其关联字符串的键的名称。如果此参数为NULL,则由lpAppName参数指定的部分中的所有键名将复制到由lpReturnedString参数指定的缓冲区中。
lpDefault [in]
默认字符串。如果在初始化文件中找不到lpKeyName键,则 GetPrivateProfileString将默认字符串复制到lpReturnedString缓冲区。如果此参数为NULL,则默认值为空字符串“”。
避免指定一个带有空白字符的默认字符串。该函数在lpReturnedString缓冲区中插入一个空字符以去除任何尾随的空白。
lpReturnedString [out]
指向接收检索字符串的缓冲区的指针。
nSize [in]
lpReturnedString参数指向的缓冲区的大小,以字符为单位。
lpFileName [in]
初始化文件的名称。如果此参数不包含文件的完整路径,系统将在Windows目录中搜索该文件。
返回值:
返回值是复制到缓冲区的字符数,不包括终止空字符。
如果lpAppName和lpKeyName都不为NULL,并且提供的目标缓冲区太小而不能容纳所请求的字符串,则该字符串将被截断,后跟一个空字符,返回值等于nSize减去一个。
如果lpAppName或lpKeyName为NULL,并且提供的目标缓冲区太小而不能容纳所有字符串,则最后一个字符串将被截断,后跟两个空字符。在这种情况下,返回值等于nSize减去2。
在没有找到由lpFileName指定的初始化文件或包含无效值的情况下,该函数将设置值为“0x2”(找不到文件)的errorno。要检索扩展错误信息,请调用GetLastError。
查看更多 WritePrivateProfileString
查看更多 GetPrivateProfileString
WritePrivateProfileString、GetPrivateProfileString 读写配置文件的更多相关文章
- 利用GetPrivateProfileString读取配置文件(.ini)
利用GetPrivateProfileString读取配置文件(.ini) 配置文件中经常用到ini文件,在VC中其函数分别为: 写入.ini文件:bool WritePrivateProfileSt ...
- 用ConfigParser模块读写配置文件——Python
对于功能较多.考虑用户体验的程序,配置功能是必不可少的,如何存储程序的各种配置? 1)可以用全局变量,不过全局变量具有易失性,程序崩溃或者关闭之后配置就没了,再者配置太多,将变量分配到哪里也是需要考虑 ...
- 使用ConfigurationManager类读写配置文件
使用ConfigurationManager类 读写配置文件app.config,以下为代码: view plaincopy to clipboard print? using System; usi ...
- Python自动化测试 (二) ConfigParser模块读写配置文件
ConfigParser 是Python自带的模块, 用来读写配置文件, 用法及其简单. 直接上代码,不解释,不多说. 配置文件的格式是: []包含的叫section, section 下有op ...
- C读写配置文件
在项目开发中,经常需要读取应用配置文件的初始化参数,用于应用在启动前进行一些初始化配置.比如:Eclipse,参数项包含主题.字体大小.颜色.Jdk安装位置.自动提示等.Eclispe配置的文件格式是 ...
- Python自动化测试 -ConfigParser模块读写配置文件
C#之所以容易让人感兴趣,是因为安装完Visual Studio, 就可以很简单的直接写程序了,不需要做如何配置. 对新手来说,这是非常好的“初体验”, 会激发初学者的自信和兴趣. 而有些语言的开发环 ...
- python:实例化configparser模块读写配置文件
之前的博客介绍过利用python的configparser模块读写配置文件的基础用法,这篇博客,介绍下如何实例化,方便作为公共类调用. 实例化的好处有很多,既方便调用,又降低了脚本的维护成本,而且提高 ...
- python:利用configparser模块读写配置文件
在自动化测试过程中,为了提高脚本的可读性和降低维护成本,将一些通用信息写入配置文件,将重复使用的方法写成公共模块进行封装,使用时候直接调用即可. 这篇博客,介绍下python中利用configpars ...
- python-ConfigParser模块【读写配置文件】
对python 读写配置文件的具体方案的介绍 1,函数介绍 import configParser 如果Configparser无效将导入的configParser 的C小写 1.1.读取配置文件 - ...
随机推荐
- 设计模式--策略模式(strategy)
1.策略模式(strategy ['strætədʒi]) 我的理解是:方案候选模式 (反正关键就是有很多的候选,哈哈) 看了很多例子,都是在说鸭子的,那个例子很好,在这里可以看 他们生产鸭子,我们就 ...
- Callable和Future详解
Java程序员必须掌握的线程知识-Callable和Future Callable和Future出现的原因 创建线程的两种方式:继承Thread类和实现Runnable接口 这两种方式都有一种缺陷,执 ...
- Linux下批量修改文件及文件夹所有者及权限
Linux下批量修改文件及文件夹所有者及权限需要使用到两个命令,chmod以及chown 例:对/opt/Oracle/目录下的所有文件与子目录执行相同的权限变更: chmod -R 700 /opt ...
- 去掉img标签周围的空白
我们在页面布局的时候,明明已经去掉了所有标签的margin和padding,img标签周围依然会有空白,解决方法有以下几种: 1.给img标签设浮动: img{ float:left; } 2.将im ...
- Physik
0.重点词汇 Der Ortsvektor:位置矢量 Die Verschiebung:位移 Die Geschwendigkeit:速度 Die Beschleunigung:加速度 Die Kre ...
- C语言经典面试题目(转的,不过写的的确好!)
第一部分:基本概念及其它问答题 1.关键字static的作用是什么? 这个简单的问题很少有人能回答完全.在C语言中,关键字static有三个明显的作用: 1). 在函数体,一个被声明为静态的变量在这一 ...
- ansible api常用模块与参数
###ansibleAPI 常用模块 用于读取yaml,json格式的文件 from ansible.parsing.dataloader import DataLoader #用于管理变量的类,包括 ...
- Mysql中的分页处理
先来说一下Mysql中limit的语法: --语法: SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset --举例: selec ...
- LeetCode GrayCode
class Solution { public: vector<int> grayCode(int n) { vector<int> res; res.push_back(); ...
- 判断是手机端还是电脑端 isMobile()
1.在PublicController控制器中写好判断手机端方法. <?php namespace Home\Controller; use Think\Controller; class Pu ...