C语言之文件

文件概述

在这里插入图片描述
在这里插入图片描述

文件分类

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

文件的打开与关闭

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

wt rt at 文本文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

文件的读写

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

文件结束为1 文件未结束为0
在这里插入图片描述

#include <stdio.h>
#include <stdlib.h>

void main()
{
	FILE *pic,*file,*new_file;
	char a[20],b[20],c[20];
	char ch;

	printf("请输入照片的名称: ");
	scanf("%s",a);

	printf("请输入文件的名称: ");
	scanf("%s",b);

	printf("请输入要合成文件的名称: ");
	scanf("%s",c);

	if( !(pic = fopen(a,"rb")) )
	{
		printf("无法打开照片\n");
	}

	if( !(file = fopen(b,"rb")) )
	{
		printf("无法打开文件\n");
	}

	if( !(new_file = fopen(c,"wb")) )
	{
		printf("无法打开新文件");
	}

	while(!(feof(pic)) )
	{
		ch = fgetc(pic);  
		fputc(ch,new_file);
	}

	fclose(pic);

	while(!(feof(file)) )
	{
		ch = fgetc(file);
		fputc(ch,new_file);
	}

	fclose(file);
	fclose(new_file);

	system("pause");
}

在这里插入图片描述

字符串输入输出

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据块的读写函数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#include <stdio.h>
#include <stdlib.h>

#define SIZE 4

struct student
{
	char name[10];
	int num;
	int age;
	char addr[15];
}stu[SIZE];


void save()
{
	FILE *fp;
	int i;

	if( !(fp = fopen("student-list","wb")))
	{
		printf("Cannot open the file!\n");
		return;
	}

	for(i=0;i<SIZE;i++)
	{
		if( fwrite(&stu[i],sizeof(struct student),1,fp) != 1)
		{
			printf("File write error!\n");
			fclose(fp);
		}
	}
}



void main()
{
	int i;
	
	printf("Please input the student's name,num,age and address: \n");
	for(i=0;i<SIZE;i++)
	{
		scanf("%s %d %d %s",stu[i].name,&stu[i].num,&stu[i].age,&stu[i].addr);
	}

	save();
}



void load()
{
	FILE *fp;
	int i;

	if( !(fp = fopen("student-list","r")))
	{
		printf("Cannot open the file\n");
		return;
	}

	for(i=0;i<SIZE;i++)
	{
		fread(&stu[i],sizeof(struct student),1,fp);
	}
	fclose(fp);
}

格式化读写函数

在这里插入图片描述

顺序读写和随机读写

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#include <stdio.h>
#include <stdlib.h>

#define SIZE 4

struct student
{
	char name[10];
	int num;
	int age;
	char addr[15];
}boy;



void main()
{
	FILE *fp;

	int i=1;

	if( !(fp = fopen("student-list","r")))
	{
		printf("Cannot open the file!\n");
		return;
	}

	rewind(fp);
	fseek(fp,i*sizeof(struct student),0);
	fread(&boy,sizeof(struct student),1,fp);

	printf("name\tnumber  age   addr\n");
	printf("%s\t%5d   %7d   %s\n",boy.name,boy.num,boy.age,boy.addr);

	system("pause");

}

在这里插入图片描述
在这里插入图片描述

出错的检测

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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、付费专栏及课程。

余额充值