欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

【C 语言】文件操作 ( 配置文件读写 | 写出或更新配置文件 | 函数形参设置 | 确保打开文件成功 | 统计文件大小 )

发布时间:2025/6/17 70 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【C 语言】文件操作 ( 配置文件读写 | 写出或更新配置文件 | 函数形参设置 | 确保打开文件成功 | 统计文件大小 ) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

文章目录

  • 一、函数形参设置
  • 二、确保打开文件成功
  • 三、统计文件大小





一、函数形参设置



函数形参设置 :

该函数的作用是 写出或更新配置项 , 遍历每行数据 , 检查 key 键 是否存在 ,

  • 如果存在 , 就更新对应的 value 值 ;
  • 如果不存在 , 在文件末尾添加该键值对信息 ;

传入 配置文件 名称 , 键值对 字符串 数据 即可 ;

下面的函数形参中的 int value_len /*in*/ 不是必须的 ;


代码示例 :

/*** @brief write_or_update_config_file 写出或更新配置项* 遍历每行数据 , 检查 key 键 是否存在* 如果存在 , 就更新对应的 value 值* 如果不存在 , 在文件末尾添加该键值对信息* 格式为 :* key = value** @param filename 文件名称* @param key 键* @param value 值* @param value_len 值的长度* @return*/ int write_or_update_config_file(char *filename /*in*/, char *key /*in*/, char * value/*in*/, int value_len /*in*/)



二、确保打开文件成功



确保打开文件成功 : 这里确保文件打开 100%100\%100% 成功 , 因为文件可能不存在 , 如果文件不存在 , 则需要创建该文件 ;


首先 , 先尝试打开文件 , 如果打开失败 , 提示错误 ;

// 使用读写方式打开 filename 文件fp = fopen(filename, "r+");// 如果打开失败 提示失败信息if (fp == NULL){ret = -2;printf("error : fopen \n");}

然后 , 使用 "w+t" 打开方式 , 打开文件 , 如果文件不存在 , 则会创建文件 , 如果本次再次打开文件失败 , 则直接退出 ;

// 如果文件打开失败 , 说明没有文件if (fp == NULL){// 以写的方式 , 打开文本文件 , 如果文件不存在 , 则创建文件fp = fopen(filename, "w+t");// 打开失败 , 直接退出if (fp == NULL){ret = -3;printf("error : fopen \n");goto End;}}

代码示例 :

// 使用读写方式打开 filename 文件fp = fopen(filename, "r+");// 如果打开失败 提示失败信息if (fp == NULL){ret = -2;printf("error : fopen \n");}// 如果文件打开失败 , 说明没有文件if (fp == NULL){// 以写的方式 , 打开文本文件 , 如果文件不存在 , 则创建文件fp = fopen(filename, "w+t");// 打开失败 , 直接退出if (fp == NULL){ret = -3;printf("error : fopen \n");goto End;}}



三、统计文件大小



统计文件大小 :

  • 首先 , 调用 fseek 函数 , 将文件指针移动到末尾 ;
// 将文件指针移动到末尾fseek(fp, 0L, SEEK_END);
  • 然后 , 调用 ftell 函数 获取当前指针位置 , 当前指针位置就是文件大小 ;
// 获取当前指针位置 , 当前指针位置就是文件大小file_length = ftell(fp);
  • 最后 , 调用 fseek 函数 , 将文件指针指向开始位置 ; 以便后续文件操作 , 不需要重新打开文件 ;
// 将文件指针指向开始位置fseek(fp, 0L, SEEK_SET);

代码示例 :

// 统计文件大小// 将文件指针移动到末尾fseek(fp, 0L, SEEK_END);// 获取当前指针位置 , 当前指针位置就是文件大小file_length = ftell(fp);// 将文件指针指向开始位置fseek(fp, 0L, SEEK_SET);// 文件大小不能超过 4Kif (file_length > 1024 * 4){ret = -3;printf("File Size More Than 4K\n");goto End;}

总结

以上是生活随笔为你收集整理的【C 语言】文件操作 ( 配置文件读写 | 写出或更新配置文件 | 函数形参设置 | 确保打开文件成功 | 统计文件大小 )的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。