文件拷贝(文件指针的应用)

该代码示例展示了如何在C语言中使用文件指针进行文件拷贝。通过fopen函数打开源文件(只读)和目标文件(只写),接着使用fgetc读取源文件内容并用fputc将内容写入目标文件,直到遇到文件结尾(EOF)。最后,确保文件正确关闭。

文件指针的应用;

打开文件(fopen)与关闭文件 (fclose);

字符输入函数(fgetc)与字符输出函数(fputc);

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

//文件拷贝
int main()
{
	//打开文件
	FILE* pfread = fopen("test1.txt", "r");	//以只读方式打开待拷贝文件
	if (pfread == NULL)
	{
		perror("Open the file of read");
		return 1;
	}
	FILE* pfwrite = fopen("test2.txt", "w");//以只写方式打开待写文件
	if (pfwrite == NULL)
	{
		perror("Open the file of write");
		fclose(pfread);		//如果待写文件打开失败,会退出程序,在退出程序前需要关闭最先打开的待拷贝文件
		pfread = NULL;
		return 1;
	}
	//使用文件
		//拷贝文件
	int ch = 0;
	while ((ch = fgetc(pfread)) != EOF)		//fgetc函数读取文件结束或读取文件失败会返回EOF
	{
		fputc(ch, pfwrite);
	}
	if (ferror(pfread))			//fgetc因读取文件失败结束
		printf("%s\n","I/O error when reading");
	else if (feof(pfread))		//fgetc因遇到文件结尾而结束
		printf("%s\n","End of file reached successfully");
	//关闭文件
	fclose(pfread);
	pfread = NULL;
	fclose(pfwrite);
	pfwrite = NULL;
	return 0;
}

 

 

 文件test1.txt中的内容完整被拷贝到文件test2.txt中。

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值