第一章 ini文件读写模块设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ini文件读写模块设计 引言 模块概述 模块通过Linux的基本I/O函数实现,实现读写ini文件功能。Ini文件格式参考附录二ini文件格式。 由于ini文件的特殊格式,模块内部每次在读写ini文件键值时需从文件头查找对应节和对应键,再进行读写操作,在写改写ini文件时需首先建立临时文件,将原ini文件中改写数据之前的数据添加到临时文件,再将需要改写的数据追加到临时文件,然后把原ini文件改写数据之后的数据添加到临时文件尾最后删除原ini文件,将临时文件名改为正式ini文件名完成一次ini文件改写操作。每次调用调用操作临时文件时,需要重新打开临时文件(模块内部不保存打开的临时文件指针)。 应用程序调用该模块进行读写操作流程如下: 词汇表 词汇名称 词汇含义 备注 节(section) Ini文件中中括号的数据 键(KEY) 节中等号左边的数据 值(value) 节中等号右边的数据 约定 文件名:inifiles.c,inifiles.h 模块中其他模块的接口函数前缀:ini_,须在模块头文件中声明,其他为文件内部使用函数在声明时加static前缀。 与其他模块关系 无 函数列表 接口函数 INT32 Ini_Create(INT8 sFileName[]); //创建ini文件 //读取字符键值 INT32 Ini_ReadString(INT8 sSectionName[], INT8 sKeyName[], INT8 sValue[], INT32 lReadLen, INT8 sDefaultVal[]) //读取整形键值 INT32 Ini_ReadInt(INT8 sSectionName[], INT8 sKeyName[], INT32 lDefaultVal); //写键值(字符类型) INT32 Ini_WriteString(INT8 sSectionName[], INT8 sKeyName[], INT8 sValue[]) //写键值(整型) INT32 Ini_WriteIni(INT8 sSectionName[], INT8 sKeyName[], INT32 lValue) //删除键 INT32 Ini_DeleteField(INT8 sSectionName[], INT8 sKeyName[]) //删除节 INT32 Ini_DeleteSection(INT8 sSectionName[]) //关闭ini文件 void Ini_Close() 局部函数 //取得键行数据 INT32 GetKeyLine (INT8 sSection[], INT8 sKey[], INT8 sData[],); //取得键行号 INT32 GetKeyLineNo(INT8 sSection[], INT8 sKey[]); //取得键值 INT32 GetKeyValue(INT8 sLineBuffer[], INT8 sData[]); //追加临时文件 INT32 AppendTmpFile(INT8 sBuffer[]); //读取并追加临时文件 INT32 ReadAndAppendTmpFile(FILE *fd, INT32 lStartLine, INT32 lEndLine); 模块内部函数调用关系 读取字符串Ini_ReadString 读取整形值Ini_ReadInt 调用关系同Ini_ReadString,取得数据后将数据转换为整形。 写字段数据Ini_WriteString 删除节中对应字段Ini_DeleteField 暂不实现。 删除节Ini_DeleteSection 暂不实现 数据结构说明 结构定义 无 宏定义 #define LINEBUFFERLEN 255; //读取行缓冲区 #define TEMPFILENAME “tmp.ini” //临时文件名 局部变量 FILE *fd; //文件指针 接口函数 创建文件 函数名 INT32 Ini_Create(INT8 sFileName[]); 输入参数 文件名 返回值 0-成功,-1-失败 功能 打开ini文件,如不存在则创建 读取字符值   INT32 Ini_ReadString(INT8 sSectionName[], INT8 sKeyName[], INT8 sValue[], INT32 lReadLen, INT8 sDefaultVal[]) 输入参数 节名,字段名,字段值 返回值 0-成功,-1-失败 功能 按照节名,字段名读取该字段字符串值 调用流程如下: 读取整形数据 函数名 INT32 Ini_ReadI

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档