iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C语言怎么实现对文件进行操作
  • 270
分享到

C语言怎么实现对文件进行操作

2023-07-05 23:07:29 270人浏览 八月长安
摘要

这篇“C语言怎么实现对文件进行操作”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言怎么实现对文件进行操作”文章吧。文件指

这篇“C语言怎么实现对文件进行操作”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言怎么实现对文件进行操作”文章吧。

文件指针

向文件里输出或读取数据需要使用文件指针的形式,每个文件指针可以用来打开一个文件,这个文件指针指向文件的文件信息区。

FILE * 变量名

文件的打开和关闭

文件使用完之后要记得关闭,不让会占用资源,文件关闭掉之后要记得把指针置空以免出现野指针

//打开文件FILE * fopen ( const char * filename, const char * mode );//关闭文件int fclose ( FILE * stream );

文件的打开方式

文件使用方式    文件使用方式    如果指定文件不存在

文件使用方式文件使用方式如果指定文件不存在
“r”(只读)为了输入数据,打开一个已经存在的文本文件出错
“w”(只写)为了输出数据,打开一个文本文件建立一个新的文件
“a”(追加)向文本文件尾添加数据建立一个新的文件
“rb”(只读)为了输入数据,打开一个二进制文件出错
“wb”(只写)为了输出数据,打开一个二进制文件建立一个新的文件
“ab”(追加)向一个二进制文件尾添加数据出错
“r+”(读写)为了读和写,打开一个文本文件出错
“w+”(读写)为了读和写,建议一个新的文件建立一个新的文件
“a+”(读写)打开一个文件,在文件尾进行读写建立一个新的文件
“rb+”(读写)为了读和写打开一个二进制文件出错
“wb+”(读写)为了读和写,新建一个新的二进制文件建立一个新的文件
“ab+”(读写)打开一个二进制文件,在文件尾进行读和写建立一个新的文件

代码示例

#include <stdio.h>int main(){    FILE *pf = fopen("test.txt",'w');    if(pf==NULL)    {        perror("FOPEN:");        //对文件指针进行判断以免返回空指针;    }    fput("haohaoxuexi,tiantianxiangshang",pf);    fclose(pf);    pf=NULL;            //文件关闭之后把指针置为空,以免出现野指针}

&lsquo; w &rsquo; 没有文件的情况下会新建一个文件在此程序文件夹下,可以看到文件已经生成了。

文件读写函数

功能函数名适用于
字符输入函数fgetc所有输入流
字符输出函数fputc所有输出流
文本行输入函数fgets所有输入流
文本行输出函数fputs所有输出流
格式化输入函数fscanf所有输入流
格式化输出函数fprintf所有输出流
二进制输入fread文件
二进制输出fwrite文件

二进制方式存储文件

二进制存储在文件内是查看不到具体信息的,要想在文件内查看具体信息要选择其他函数。

二进制形式存储代码示例

#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string.h>#include <malloc.h>struct student{    char name[20];    int age;    char adress[20];}*s1;int main(){    s1 = (struct student*)malloc(sizeof(struct student));    if (s1 == NULL)    {        perror("malloc:");        return 0;    }    FILE* pf = fopen("test.txt", "wb");    if (pf == NULL)    {        perror("FOPEN:");   //对文件指针进行判断以免返回空指针;        return 0;    }    strcpy(s1->name, "陈独秀");    s1->age = 18;    strcpy(s1->adress,"东城区箭杆胡同20号");    fwrite(s1, sizeof(struct student), 1, pf);    fclose(pf);    pf = NULL;}

结果:

C语言怎么实现对文件进行操作

可以看到文件已经出现了部分乱码,还能看到文字的原因是文本文件打开的时候默认以一种编码形式打开,将本来存到文本里的二进制信息进行了解码。

对文件进行拷贝

这里要注意\需要再用\转义,否则是转义字符的意思

  • 先打开要拷贝的文件,再打开新建拷贝后的文件进行拷贝

  • 如果是图片视频等文件,要使用二进制的方式打开、读取和存储,否则文件会损坏

#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <string.h>#include <malloc.h>int main(){    FILE* pfr = fopen("C:\\Users\\22763\\Pictures\\Saved Pictures\\QQ图片20211001085735.jpg", "rb"); //要拷贝的文件目录    FILE* pfw = fopen("CopyPic.jpg", "wb");    char temp;    if (pfw == NULL||pfr==NULL)    {        perror("FOPEN:");   //对文件指针进行判断以免返回空指针;        return 0;    }    while (fread(&temp, sizeof(char), 1, pfr))    {        fwrite(&temp, sizeof(char), 1, pfw);    }    fclose(pfw);    fclose(pfr);    pfw = NULL;    pfr = NULL;}

文件随机读写函数

这三个函数并不常用,所有只要知道有这三个函数就行了以及他们是干什么的就可以了,用的时候再查。

fseek

int fseek(FILE stream,long offset,int origin );

根据文件指针的位置和偏移量来定位文件指针。

ftell

long ftell( FILE *stream );

返回文件指针相对于起始位置的偏移量

rewind

void rewind( FILE *stream );

让文件指针的位置回到文件的起始位置

文件缓冲区

文件在读或者写的时候存在一个文件缓冲区,因为与磁盘交互,需要一定时间(尽管很短),但是为了尽可能的节省时间,系统自动地在内存中设立了文件缓冲区,等攒够一定的数据,或者程序结束,一起读或写,这样大大提高读写速度,避免每个字符都要进行一次读或写。

以上就是关于“C语言怎么实现对文件进行操作”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网其他教程频道。

--结束END--

本文标题: C语言怎么实现对文件进行操作

本文链接: https://www.lsjlt.com/news/356266.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C语言怎么实现对文件进行操作
    这篇“C语言怎么实现对文件进行操作”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C语言怎么实现对文件进行操作”文章吧。文件指...
    99+
    2023-07-05
  • C语言实现对文件进行操作的示例详解
    目录前言文件指针文件的打开和关闭文件的打开方式文件读写函数二进制方式存储文件对文件进行拷贝文件随机读写函数文件缓冲区前言 文件操作 在运行程序的时候,此时数据是存放在内存中,当程序退...
    99+
    2023-05-15
    C语言实现文件操作 C语言文件操作 C语言文件
  • C语言怎么实现文件操作
    这篇文章将为大家详细讲解有关C语言怎么实现文件操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。什么是文件磁盘上的文件就是文件。在程序设计中,我们一般谈的文件有两种:程序文件和数据文件程序文件包括源程序文...
    99+
    2023-06-25
  • c语言怎么对文件进行读写
    C语言提供了一组文件操作函数,用于打开、读、写和关闭文件。下面是一个简单的示例,演示了如何对文件进行读写。1. 打开文件:```c#...
    99+
    2023-09-27
    c语言
  • 【c语言进阶】文件操作(上)
    🚀write in front🚀 📜所属专栏:> c语言学习 🛰️博客主页:睿睿的博客主页 🛰️代码仓库:...
    99+
    2023-09-09
    c语言 数据库 java
  • C语言实现银行管理系统(文件操作)
    本文实例为大家分享了C语言实现银行管理系统的具体代码,供大家参考,具体内容如下 银行管理系统主要有五个模块组成: 1、查询账户信息2、存钱3、取款4、转账5、退出系统 测试文件:(首...
    99+
    2024-04-02
  • C#中怎么利用FileStream对文件进行操作
    C#中怎么利用FileStream对文件进行操作,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。C# FileStream写文件的操作实例:///先导入命名空间:...
    99+
    2023-06-17
  • C#中怎么对ini文件进行读写操作
    本篇文章为大家展示了C#中怎么对ini文件进行读写操作,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C#读写ini文件其实并不是普通的文本文件.它有自己的结构.由若干段落(SECTION)组成,在每...
    99+
    2023-06-18
  • C语言中如何实现文件操作
    这篇文章主要介绍了C语言中如何实现文件操作,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。为什么使用文件我们在想既然是通讯录就应该把信息记录下来,只有我们自己选择删除数据的时候...
    99+
    2023-06-29
  • 怎么利用纯C语言对EXCEL进行读写操作
    本文小编为大家详细介绍“怎么利用纯C语言对EXCEL进行读写操作”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么利用纯C语言对EXCEL进行读写操作”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、写操作单纯...
    99+
    2023-07-02
  • node.js中怎么对文件进行操作
    这篇文章将为大家详细讲解有关node.js中怎么对文件进行操作,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、文件操作在文件操作里,主要是有文件读写,创建...
    99+
    2024-04-02
  • C#中怎么对文本文件进行添加文本操作
    本篇文章给大家分享的是有关C#中怎么对文本文件进行添加文本操作,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。using System;  &nbs...
    99+
    2023-06-17
  • Python中怎么对文件进行操作
    Python中怎么对文件进行操作,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。编码方式编码方式的历史大致为ASCII ->gb2312->unicode->u...
    99+
    2023-06-16
  • VBScript 中怎么对文件进行操作
    这期内容当中小编将会给大家带来有关VBScript 中怎么对文件进行操作,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。创建文本文件 复制代码 代码如下:Set objFSO = CreateObject(...
    99+
    2023-06-08
  • Go语言中怎么实现文件操作
    今天就跟大家聊聊有关Go语言中怎么实现文件操作,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。打开和关闭文件package main  import&nb...
    99+
    2023-06-15
  • C语言进阶之文件操作详解
    目录0. Intro1. 文件名2. 文件的打开和关闭2.1 文件指针2.2 打开和关闭文件3. 文件顺序读写3.1 利用以上函数实现拷贝文件操作3.2 二进制的读写3.3 格式化输...
    99+
    2024-04-02
  • Java 7中怎么对文件进行操作
    这篇文章将为大家详细讲解有关Java 7中怎么对文件进行操作,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。创建和删除文件下面的代码片段向你展示的是用 Files.createFile(Pat...
    99+
    2023-06-17
  • 使用Python怎么对文件进行操作
    使用Python怎么对文件进行操作?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。文件的存储方式在计算机中,文件是以 二进制的方式保存在磁盘上的文本文件和二进制文...
    99+
    2023-06-15
  • R语言对二进制文件操作详解
    二进制文件是包含仅以位和字节(0和1)的形式存储的信息的文件。它们不是人类可读的,因为它中的字节转换为包含许多其他不可打印字符的字符和符号。尝试使用任何文本编辑器读取二进制文件将显示...
    99+
    2024-04-02
  • R语言对Excel文件操作实例
    Microsoft Excel是最广泛使用的电子表格程序,以.xls或.xlsx格式存储数据。 R语言可以直接从这些文件使用一些excel特定的包。 很少这样的包是XLConnect...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作