C 语言文件处理全攻略:创建、写入、追加操作解析

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
云原生网关 MSE Higress,422元/月
应用实时监控服务ARMS - 应用监控,每月50GB免费额度
简介: 在 C 语言中,您可以通过声明类型为 FILE 的指针,并使用 fopen() 函数来创建、打开、读取和写入文件:

C 语言中的文件处理

在 C 语言中,您可以通过声明类型为 FILE 的指针,并使用 fopen() 函数来创建、打开、读取和写入文件:

FILE *fptr;
fptr = fopen(filename, mode);

FILE 基本上是一个数据类型,我们需要创建一个指针变量来使用它 (fptr)。现在,这行代码并不重要。它只是在处理文件时需要的东西。

要实际打开文件,请使用 fopen() 函数,它接受两个参数:

参数 描述
filename 要打开的实际文件的名称,例如 filename.txt
mode 一个表示您想对文件做什么(读取、写入或追加)的单个字符:
w 写入文件
a 将新数据追加到文件
r 从文件中读取

创建文件

要创建文件,可以在 fopen() 函数中使用 w 模式。

w 模式用于写入文件。但是,如果文件不存在,它将为您创建一个文件:

FILE *fptr;

// 创建一个文件
fptr = fopen("filename.txt", "w");

// 关闭文件
fclose(fptr);

注意:如果未指定其他信息,文件将与您的其他 C 文件位于同一目录中。

在我们的电脑上,它看起来像这样:

运行示例 »

提示:如果您想在特定文件夹中创建文件,只需提供绝对路径:

fptr = fopen("C:\directoryname\filename.txt", "w");

关闭文件

您是否在上面的示例中注意到了 fclose() 函数

当我们完成后,它将关闭文件

它被认为是良好的实践,因为它可以确保:

  • 更改已正确保存
  • 其他程序可以使用该文件(如果您愿意)
  • 清理不必要的内存空间

C 语言中的文件写入

w 模式表示文件已打开用于写入。要将内容插入其中,可以使用 fprintf() 函数,并添加指针变量 (我们示例中的 fptr) 和一些文本:

FILE *fptr;

// 以写入模式打开文件
fptr = fopen("filename.txt", "w");

// 将一些文本写入文件
fprintf(fptr, "Some text");

// 关闭文件
fclose(fptr);

注意:如果您写入一个已经存在的文件,则旧内容将被删除,并插入新内容。这一点很重要,因为您可能会意外擦除现有内容。

例如:

fprintf(fptr, "Hello World!");

因此,当我们在计算机上打开文件时,它显示 “Hello World!” 而不是 “Some text”

将内容追加到文件

如果您想在不删除旧内容的情况下将内容添加到文件,可以使用 a 模式。

a 模式将内容追加到文件末尾:

FILE *fptr;

// 以追加模式打开文件
fptr = fopen("filename.txt", "a");

// 将一些文本追加到文件
fprintf(fptr, "\nHi everybody!");

// 关闭文件
fclose(fptr);

因此,当我们在计算机上打开文件时,它看起来像这样:

Some text
Hi everybody!

注意:当使用 a 模式时,fprintf() 函数不会添加新行。如果您希望在追加的内容之前添加新行,则需要在 fprintf() 函数中手动添加它,如下所示:

fprintf(fptr, "\n%s", "Hi everybody!");

这将在追加文本之前添加一个新行。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

相关文章
|
9天前
|
SQL 关系型数据库 MySQL
MySQL DDL(数据定义语言)深度解析
MySQL DDL(数据定义语言)深度解析
|
6天前
|
SQL 安全 数据库
Ruby on Rails 数据库迁移操作深度解析
【7月更文挑战第19天】Rails 的数据库迁移功能是一个强大的工具,它帮助开发者以版本控制的方式管理数据库结构的变更。通过遵循最佳实践,并合理利用 Rails 提供的迁移命令和方法,我们可以更加高效、安全地管理数据库结构,确保应用的稳定性和可扩展性。
|
24天前
|
存储 算法 搜索推荐
深入解析String数组的操作与性能优化策略
深入解析String数组的操作与性能优化策略
|
20天前
|
存储 数据管理 数据库
CRUD操作实战:从理论到代码实现的全面解析
【7月更文挑战第4天】在软件开发领域,CRUD代表了数据管理的四个基本操作:创建(Create)、读取(Read)、更新(Update)和删除(Delete)。这四个操作构成了大多数应用程序数据交互的核心。本文将深入讲解CRUD概念,并通过一个简单的代码示例,展示如何在实际项目中实现这些操作。我们将使用Python语言结合SQLite数据库来演示,因为它们的轻量级特性和易用性非常适合教学目的。
38 2
|
1月前
|
监控 关系型数据库 分布式数据库
PolarDB时间范围内PCU用量统计:深度解析与操作指南
了解PolarDB云原生数据库的PCU计费至关重要,1PCU相当于1核2GB资源。文章详述如何统计指定时间内PCU用量:登录控制台,查看集群监控,导出数据分析,或使用API接口获取信息。统计结果有助于分析数据库负载、优化资源使用和成本控制。通过对比不同时间段的PCU用量,用户可做出扩展或优化决策。未来,PolarDB有望提供更强大的统计工具。
|
9天前
|
SQL 关系型数据库 MySQL
MySQL DQL(数据查询语言)深度解析与实践
MySQL DQL(数据查询语言)深度解析与实践
|
22天前
|
存储 C语言
C语言中static关键字的作用与用法解析
C语言中static关键字的作用与用法解析
|
23天前
|
存储 算法 搜索推荐
深入解析String数组的操作与性能优化策略
深入解析String数组的操作与性能优化策略
|
23天前
|
JavaScript
js 解析和操作树 —— 获取树的深度、提取并统计树的所有的节点和叶子节点、添加节点、修改节点、删除节点
js 解析和操作树 —— 获取树的深度、提取并统计树的所有的节点和叶子节点、添加节点、修改节点、删除节点
30 0
|
24天前
|
SQL DataWorks Oracle
DataWorks产品使用合集之datax解析oracle增量log日志该如何操作
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
19 0

推荐镜像

更多