文章目录
- 一、配置文件读写 业务逻辑
- 二、接口设计
- 1、写文件接口
- 2、读文件接口
- 3、修改文件接口
- 4、接口合并
一、配置文件读写 业务逻辑
开发一个系统 , 在命令行中实现如下功能 , 通过命令操作 ,
- 写文件 : 输入 Key-Value 键值对 , 将键值对保存到文件中 ;
- 读文件 : 输入 Key 键 信息 , 查询该 Key 键 对应的 Value 值 信息 ;
- 修改文件 : 输入 Key-Value 键值对 , 将新的键值对更新到文件中 ;
二、接口设计
1、写文件接口
写文件接口 : 写文件时 , 需要一个文件名称 , Key-Value 键值对 字符串 ;
这
个参数值都不需要修改 , 使用 const 修饰
个参数 , const
修饰指针时 , 左数右指 , 这里在 * 左侧修饰 指针 , 将指针设置为常量 ;
int write_cfg(const char *filename, const char *key, const char *value)
上述
个函数形参 , 都作为输入 ;
2、读文件接口
读文件接口 : 度文件时 , 需要一个文件名称 , Key 键 字符串 , Value 值 需要当做返回值使用 , 这里使用二级指针 ;
这
个参数值中 , 文件名 和 Key 键 都不需要修改 , 使用 const
修饰这
个参数 , const
修饰指针时 , 左数右指 , 这里在 * 左侧修饰 指针 , 将指针设置为常量 ;
指向 Value
值一级指针 的二级指针 , 需要修改 , Value
值 不能使用 const
修饰 ;
int read_cfg(const char *filename, const char *key, char **value)
上述 const char *filename
和 const char *key
个形参是输入 , char **value
形参作为输出 ;
3、修改文件接口
修改文件接口 : 修改文件时 , 需要一个文件名称 , Key-Value 键值对 字符串 ;
这
个参数值都不需要修改 , 使用 const 修饰
个参数 , const
修饰指针时 , 左数右指 , 这里在 * 左侧修饰 指针 , 将指针设置为常量 ;
int update_cfg(const char *filename, const char *key, const char *value)
上述
个函数形参 , 都作为输入 ;
修改 文件 的前提是 , 调用者知道该文件中 已经保存了哪些文件 ;
4、接口合并
写文件 和 修改文件 这两个功能 可以进行合并 ;
输入 Key-Value 键值对时 , 查询该文件中 , 是否已经存在 Key 键值 , 如果不存在 , 则新增数据 ( 写文件 ) , 如果存在 则 更新数据 ( 修改文件 ) ;