首页 > 其他分享 >C语言-实现文件操作

C语言-实现文件操作

时间:2024-03-27 13:00:46浏览次数:27  
标签:文件 函数 C语言 从文件 操作 我们

0.前言:

        我们知道下载东西,电脑上就会有各种的文件夹及文件里面的内容,那么文件里面的数据怎么通过编写程序来帮我们获取呢,这些文件又是怎么创建的呢?C语言给我们提供了一些可以操作文件的函数。这里我只列举了一部分操作文件的函数,使用这些函数需要引入头文件<stdlib.h>,如下图:

1.操作文件的准备工作:

        当我们知道了C语言给我们的函数是不是就可以直接调用了呢?

那是肯定的,我们有了函数调用就可以对文件进行操作了,但是问题来了,怎么对文件进行操作呢?我们有了操作的函数,但是没有操作的对象?当我们去观察上面的函数时,你会发现都有一个共同参数,FILE* stream,其实这就是我们要的对象-文件类型的指针来接收。那我们该如何创建一个这样的对象呢?那我们就需要另一个函数来获取了:

实例代码:

运行前:

运行后:

        这里我只是使用了fopen函数打开文件,还没有使用操作函数对文件进行操作。

2.输出函数-写数据到文件中:

        当我们打开文件后,并以"w"写的形式打开时,就可以使用上面的输出函数进行对文件操作了。

        2.1:fputc:以字符数据写入文件中:

        2.2:fputs:以字符串数据写入文件中:

        2.3:fprintf:以格式化的方式写入数据到文件中:

3.输入函数-从文件中获取数据

        当我们打开文件后,并以"r"读的形式打开时,就可以使用上面的输出函数进行对文件操作了。注意:打开文件的时候如果没有这个文件,那么会报错。

        所以读取文件的时候要有这个文件的存在。

        3.1:fgetc:从文件中读取字符:

        

        3.2:fgets:从文件中读取字符串:

        3.3:fscanf:从文件中以格式化的形式获取数据:

        结果:

        数据:

4.总结:

        C语言给我们提供了一些可以对文件进行读写的操作,当我们要对一个文件进行操作时,需要先创建一个文件指针FILE*,然后配合函数进行读写操作,需要注意的是:当读一个文件时,需要这个文件存在,否则会报错。

标签:文件,函数,C语言,从文件,操作,我们
From: https://blog.csdn.net/2201_76124157/article/details/137042993

相关文章

  • Es 7+ 基本操作
    查询GET_search{"query":{"match_all":{}}}创建索引PUT/abc/创建更新指定ID的数据,ID存在即更新,原理是先删除行再插入POST/abc/_doc/1{"name":"qqq","age":28.1}创建生成自动ID的数据POST/abc/_doc{"na......
  • 生产大文件下载导致 OOM,顺藤摸瓜拿下
    上周遇到了生产环境OOM的问题,找了一番之后基本定位了是大文件下载导致的问题,于是在网上搜罗了一番文章,下面分享一篇优质的解决方案,整个排查思路非常清晰,小白可以直接对照着来排查。事故发生上周五下午运营人员反馈,笔者所负责的后台系统从14点以后就卡卡的,虽然页面能够正常加......
  • linux统计文件夹里有多少个文件内容
    在Linux中,可以使用find命令配合wc命令来统计某个文件夹内的文件数量。以下是一个示例命令,用于统计当前目录下的文件数量(不包括子目录中的文件):find.-typef|wc-l如果你想包括子目录中的文件数量,可以省略-typef,只使用find.。如果你只想统计特定目录下的文件数量,可以将.替......
  • 如何系统得自学python?——11.文件操作
    一、文件操作的作用 ⽂件操作包含:打开、关闭、读、写、复制......⽂件操作的的作⽤是:读取内容、写⼊内容、备份内容......⽂件操作的作⽤就是把⼀些内容(数据)存储存放起来,可以让程序下⼀次执⾏的时候直接使⽤,⽽不必重新制作⼀份,省时省⼒。 二、文件操作方式1.文件操作......
  • git 常用操作记录(tag、remote、rebase等)
             关于git的常用命令(add、commit、pull、push、merge、stash等)在之前的博文已经介绍过了,下面根据工作中遇到的问题,总结一些更为常用的命令使用方式。1、版本标签tag    tag是基于一次commit的,可以指定在某个分支的提交进行打标签。1.1、本地tag常......
  • System.Runtime, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3
    VS2022.netCore5.0项目编译没问题,运行时报这个错System.IO.FileNotFoundException:“Couldnotloadfileorassembly'System.Runtime,Version=6.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a'.系统找不到指定的文件。” 我这里遇到这个问题的原因是,v......
  • openEuler20.03操作系统上安装部署MogDB2.1.1
    openEuler20.03操作系统上安装部署MogDB2.1.1本文出处:https://www.modb.pro/db/378319openEuler操作系统上安装mogdb:下载openEuler镜像文件:openEuler-20.03-LTS-x86_64-dvd.iso可以到各镜像源网站下载:例如:清华源下载地址:https://mirrors.tuna.tsinghua.edu.cn/openeule......
  • MogDB 操作系统优化指南
    MogDB操作系统优化指南本文出处:https://www.modb.pro/db/413280在性能调优过程中,可以根据实际业务情况修改关键操作系统(OS)配置参数,以提升MogDB数据库的性能。前提条件需要用户使用gs_check检查操作系统参数结果是否和建议值保持一致,如果不一致,用户可根据实际业务情况去手......
  • python的应用 | 提取指定文件夹下所有PDF文件的页数
    需求背景:由于要打印几十页pdf,跟打印店对接的时候,为了防止被坑,提前了解一下,所有文档一共有多少页,于是想到了用python来提取pdf文件的页数完整代码:importosfromPyPDF2importPdfReaderdefget_pdf_page_count(folder_path):#初始化总页数变量total_pages=0......
  • Cadence——生成Gerber制板文件
    软件版本:CadenceSPBOrCADAllegro16.6打开AllegroPCBDesigner选择如下选项......