C语言的文件函数

文章详细介绍了C语言中对文件进行操作的基本函数,如fopen用于打开文件,fclose用于关闭文件。fputc和fgetc分别用于字符的写入和读取,fputs和fgets处理字符串的读写。同时,还提到了二进制数据的读写函数fread和fwrite,以及文件指针的控制函数rewind、ftell和fseek。

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

文件开关操作

  • fopen 文件打开
  • fclose 文件关闭
函数名参数作用返回值
fopen()参数1:一个字符串用于描述文件的路径
参数2: 打开方式可以指定r r+ w w+ wb wb+ a a+等操作
文件的打开打开成功:FILE * 类型的指针
打开失败:返回NULL
fclose()参数1:文件类型的指针关闭文件关闭成功:0
关闭失败:EOF

需要注意:NULL 相当于 数字0 , EOF 相当于数字-1

举例说明

#include <stdio.h>

int main() { 
	FILE * fp = fopen("./example.txt", "w+"); // 打开文件 fp就是文件指针
	fclose(fp); // 关闭文件
}

文件的读写操作

单个字符操作char 类型

  • fputc 向文件写入一个字符
  • fgetc 向文件获取一个字符
函数名参数作用返回值
fputc()参数1:要被写入的字符
参数2:文件类型的指针
参数1指定的字符(一个无符号字符)写入到指定的文件中写入成功:返回参数1
写入失败:返回EOF
fgetc()参数1:文件类型的指针从文件中获取一个字符获取成功:返回从文件中获取的字符
获取失败:返回EOF

举例说明

#include <stdio.h>

int main() { 
	FILE * fp = fopen("./example.txt", "w+"); // 打开文件 fp就是文件指针

    char ch = 'A';
    fputc(ch, file);
    
    char ch1 = fgetc(file);
    
	fclose(fp); // 关闭文件
}

字符串操作char *char [] 类型

  • fputs 向文件写入一个字符串
  • fgets 向文件获取一个字符串
函数名参数作用返回值
fputs参数1:要被写入的 字符串
参数2:文件类型的指针
向文件写入一个字符串写入成功:返回一个写入的字符串的长度包括’\0’
写入失败:返回EOF
fgets参数1:这是指向一个字符数组的指针,该数组存储了要读取的字符串
参数2:这是要读取的最大字符数(包括最后的空字符)
参数3:文件类型的指针
向文件获取一个字符串获取成功:返回从文件中获取的字符串
获取失败:返回EOF

举例说明

#include <stdio.h>

int main() { 
	FILE * fp = fopen("./example.txt", "w+"); // 打开文件 fp就是文件指针
	char n[10];
    fgets(n, 10, fp); // 10 是最大字符数 但实际只可以获取 10 - 1 个 因为永远要给\0留位置
    
    fputs(s, file);  // 向文件写入一个字符串
    
	fclose(fp); // 关闭文件
}

二进制 读写操作

  • fread 向文件获取一个指定大小的二进制数据流
  • fwrite 向文件写入一个指定大小的二进制数据流
函数名参数作用返回值
fread参数1:指向带有最小尺寸 参数2*参数3 字节的内存块的指针。

参数2:要读取的每个元素的大小,以字节为单位。

参数3:元素的个数,每个元素的大小为 参数2 个字节。

参数4:文件类型的指针
给文件指针读取数据到 参数1 所指向的数组中。
fwrite参数1:指向要被写入的元素数组的指针。

参数2:要被写入的每个元素的大小,以字节为单位。

参数3:元素的个数,每个元素的大小为 参数2 字节。

参数4:文件类型的指针
给文件指针写入数据到 参数1 所指向的数组中。

举例说明

#include <stdio.h>

int main() { 
	FILE * fp = fopen("./example.txt", "w+"); // 打开文件 fp就是文件指针
    char str[] = "搬搬砖得了";
	
	fwrite( str, sizeof(str), 1, fp );   // 文件的内容为:搬搬砖得了
    
	fclose(fp); // 关闭文件
}

文件指针的操作

  • rewind 将文件指针指向文件的开头
  • ftell 获得文件指针当前的位置
  • fseek将文件指针定位到指定位置
函数名参数作用返回值
rewind参数1:文件类型的指针设置文件位置为给定流 stream 的文件的开头。void
ftell参数1:文件类型的指针返回的当前文件指针位置long类型的当前指针位置,如果发生错误,则返回 -1L
fseek参数1:文件类型的指针
参数2:偏移几个字节

参数3:以哪个 位置为基准

- SEEK_SET 文件的开头
- SEEK_CUR 文件指针的当前位置
- SEEK_END 文件的末尾
设置文件指针 的文件位置为给定的偏移 offset,参数 offset 意味着从给定的 whence 位置查找的字节数。如果成功,则该函数返回零,否则返回非零值。

无示例

C语言文件操作及函数大全 2.文件操作函数: (1)文件打开函数fopen fopen函数用来打开一个文件,其调用的一般形式为: 文件指针名=fopen("文件名","使用文件方式"); 其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是被打开文件文件名。 “使用文件方式”是指文件的类型和操作要求。“文件名”是字符串常量或字符串数组。例如: FILE *fp; fp=fopen("file b","r"); 其意义是在当前目录下打开文件file b, 只允许进行“读”操作,并使fp指向该文件。 又如: FILE *fp fp=("c:\\file_a',"rb") 其意义是打开C驱动器磁盘的根目录下的文件file_a, 这是一个二进制文件,只允许按二进制方式进行读操作。两个反斜线“\\ ”中的第一个表示转义字符,第二个表示根目录。"\\"对于打开磁盘下的文件,要注意两个双斜线的正确应用,在表示绝对路径时,每一级目录都要用"\\", 例如:fp=fopen("d:\\study\\file_b","r+"); ####使用文件的方式共有12种,下面给出了它们的符号和意义。 文件使用方式 意 义 “rt” 只读打开一个文本文件,只允许读数据 “wt” 只写打开或建立一个文本文件,只允许写数据 “at” 追加打开一个文本文件,并在文件末尾写数据 “rb” 只读打开一个二进制文件,只允许读数据 “wb” 只写打开或建立一个二进制文件,只允许写数据 “ab” 追加打开一个二进制文件,并在文件末尾写数据 “rt+” 读写打开一个文本文件,允许读和写 “wt+” 读写打开或建立一个文本文件,允许读写 “at+” 读写打开一个文本文件,允许读,或在文件末追加数据 “rb+” 读写打开一个二进制文件,允许读和写 “wb+” 读写打开或建立一个二进制文件,允许读和写 “ab+” 读写打开一个二进制文件,允许读,或在文件末追加数据 对于文件使用方式有以下几点说明:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值