前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【C 语言】文件操作 ( 配置文件读写 | 框架搭建 | 写出或更新配置文件 | 读取配置文件 )

【C 语言】文件操作 ( 配置文件读写 | 框架搭建 | 写出或更新配置文件 | 读取配置文件 )

作者头像
韩曙亮
发布2023-03-30 08:49:41
5670
发布2023-03-30 08:49:41
举报
文章被收录于专栏:韩曙亮的移动开发专栏

文章目录

一、写出或更新配置文件


写出或更新配置文件 :

  • 首先 , 使用 字符数组 存储 键值对 信息 ;
代码语言:javascript
复制
    // 写出 或 更新 的配置项
    // 数组声明会后 , 注意先进行初始化为 0 操作 , 否则其中的数据可能是随机的
    char key[256] = {0};      // Key 键
    char value[256] = {0};    // Value 值
  • 然后 , 通过 scanf 获取 键值对 信息 ;
代码语言:javascript
复制
    // 提示输入 Key 键
    printf("\nPlease Input Key : ");
    // 将 Key 存储到 name 字符串数组中
    scanf("%s", key);

    // 提示输入 Value 值
    printf("\nPlease Input Value : ");
    // 将 Value 值 存储到 value 字符串数组中
    scanf("%s", value);
  • 最后 , 调用 write_or_update_config_file 函数 , 传入 文件名 , 要 写出 或 更新的 键值对信息 ;
代码语言:javascript
复制
    // 向 D:/File/config.ini 写出或更新 键值对 信息
    ret = write_or_update_config_file(CONFIG_FILE_NAME /*in*/, key /*in*/, value/*in*/,strlen(value) /*in*/);

代码示例 :

代码语言:javascript
复制
/**
 * @brief write_update_config
 * 启动 写出 / 更新 配置项 模块 , 执行 写出 / 更新 配置项操作
 * @return
 */
int write_update_config()
{
    // 局部变量 返回值 , 用于表示程序状态
    int ret = 0;

    // 写出 或 更新 的配置项
    // 数组声明会后 , 注意先进行初始化为 0 操作 , 否则其中的数据可能是随机的
    char key[256] = {0};      // Key 键
    char value[256] = {0};    // Value 值

    // 提示输入 Key 键
    printf("\nPlease Input Key : ");
    // 将 Key 存储到 name 字符串数组中
    scanf("%s", key);

    // 提示输入 Value 值
    printf("\nPlease Input Value : ");
    // 将 Value 值 存储到 value 字符串数组中
    scanf("%s", value);

    // 向 D:/File/config.ini 写出或更新 键值对 信息
    ret = write_or_update_config_file(CONFIG_FILE_NAME /*in*/, key /*in*/, value/*in*/,strlen(value) /*in*/);
    // 判定执行中是否出错
    if (ret != 0)
    {
        printf("error : write_or_update_config : %d \n", ret);
        return ret;
    }

    // 打印成功插入的键值对
    printf("Input :%s = %s Success !\n", key , value);
    return ret;
}

二、读取配置文件


读取配置文件 :

  • 首先 , 使用 字符数组 存储 键值对 信息 , 声明相关字符数组 ;
代码语言:javascript
复制
    // 读取 的配置项
    // 数组声明会后 , 注意先进行初始化为 0 操作 , 否则其中的数据可能是随机的
    char key[256] = {0};      // Key 键
    char value[256] = {0};    // Value 值
  • 然后 , 通过 scanf 获取 键值对 信息 ;
代码语言:javascript
复制
    // 提示输入 Key 键
    printf("\nPlease Input Key : ");
    // 将 Key 存储到 name 字符串数组中
    scanf("%s", key);
  • 最后 , 调用 read_config_file 函数 , 传入 文件名称 , 键 字符串 , 值的接收数组 , 以及 写入 Value 值 的长度 ;
代码语言:javascript
复制
    // 从 D:/File/config.ini 读取 键值对 信息
    ret = read_config_file(CONFIG_FILE_NAME /*in*/, key /*in*/, value/*in*/, &value_len /*out*/);

代码示例 :

代码语言:javascript
复制
/**
 * @brief read_config
 * 从配置文件中 , 读取配置文件 键值对 信息
 * @return
 */
int read_config()
{
    // 局部变量 返回值 , 用于表示程序状态
    int ret = 0;

    // 读取 的配置项
    // 数组声明会后 , 注意先进行初始化为 0 操作 , 否则其中的数据可能是随机的
    char key[256] = {0};      // Key 键
    char value[256] = {0};    // Value 值

    // 值 Value 的长度
    int value_len = 0;

    // 提示输入 Key 键
    printf("\nPlease Input Key : ");
    // 将 Key 存储到 name 字符串数组中
    scanf("%s", key);

    // 从 D:/File/config.ini 读取 键值对 信息
    ret = read_config_file(CONFIG_FILE_NAME /*in*/, key /*in*/, value/*in*/, &value_len /*out*/);
    if (ret != 0)
    {
        printf("error : read_config : %d \n", ret);
        return ret;
    }

    // 打印查询结果
    printf("Get Value Success , Value = %s \n", value);

}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、写出或更新配置文件
  • 二、读取配置文件
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档