文件

本文详细介绍了C语言中文件操作的基本方法,包括文件的打开、读取、写入及关闭等过程。阐述了不同文件模式的区别,并解释了如何利用fopen、fclose、fwrite和fread等函数进行文件操作。此外,还介绍了文件位置指针的概念及其调整方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言使用文件


     所有文件里记录的都是二进制内容

     文本文件里所有二进制数据都是字符的ASCII码

     除了文本文件以外的所有文件,叫二进制文件


    所有文件都可以采用二进制方式操作

    1. 打开文件

    2. 操作文件

   3. 关闭文件


1. 打开文件

    fopen函数需要两个参数: 要打开文件的路径、打开文件的方式

    文件打开方式有如下选择:

    "r": 只能查看文件内容,只能从文件头开始查看,要求文件已经存在,否则打开失败

   "r+": 比"r"多了修改文件的功能

   "w": 只能修改文件内容,不能查看

           只能从文件头开始修改

           如果文件不存在,则创建文件

           如果文件已经存在,则删除文件内容

   "w+": 比"w"多了查看功能

   "a": 只能修改文件内容

          修改方式是在文件末尾追加新内容

         如果文件不存在,则创建文件

         如果文件已经存在,则不修改文件原有内容

  "a+": 比"a"多了查看功能

 

  ”b": 也是一种打开方式,它可以和前面的任何一种混用,这个打开方式表示以二进制的方式操作文件

  fopen的返回值是一个文件指针,这个文件指针可以在程序中代表一个打开的文件

  fopen函数有可能失败,如果失败则返回NULL

  一旦完成对文件的所有操作,就必须使用fclose函数关闭文件

fclose 函数需要文件指针作为参数,文件关闭后文件指针称为野指针,必须恢复成空指针


文件操作分为两种:

1。 把内存中一组连续存储区的内容拷贝到文件里(写文件)

2。把文件中一组连续存储区的内容拷贝到内存里(读文件)

fwrite 函数用来写文件

fread 函数用来读文件

这两个函数都需要四个参数:

(1). 内存中第一个存储区的地址

(2). 内存中单个存储区的大小

(3). 希望操作的存储区个数

(4). 文件指针

这两个函数都是以二进制方式对文件进行操作的






文件的位置指针:

  计算机为每个文件保留一个整数,这个整数表示下一次读写文件的开始位置

  这个整数的数值就是从文件头到这个位置之间包含的字节个数,这个整数叫做文件的位置指针

 每当从文件中获得n个字节或写入n个字节,则位置指针会指向后移动n个字节

ftell 函数,可以获得当前位置指针的数值

rewind函数,可以把位置指针移动到文件开头

fseek函数,可以把位置指针移动到文件中的任何位置

                     这个函数通过选择一个基准位置,另外再加上目标位置到基准位置的距离来表示目标位置

SEEK_SET  0 ---------文件头作为基准位置

SEEK_CUR 1----------当前位置作为基准位置

SEEK_END 2---- ------文件尾作为基准位置

如果目标位置在基准位置后面,则距离是正的

如果目标位置在基准位置前面,则距离是负的

距离表示两个位置之间包含的字节个数







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值