一个文件合成器的代码

功能:可以将一个jpg文件与一个rar文件进行合成。

#include <stdio.h>

int main()
{
	printf("本程序可以合成一个jpg图片与一个rar文件合并\n");
	errno_t err;		//errno_t是一个整型数据,代表错误代码,一般0就代表程序正常
	FILE *fp1 = NULL;	//建立文件指针
	FILE *fp2 = NULL;
	FILE *fp3 = NULL;
	char s1[100], s2[100], s3[100];
	int x;
	printf("请输入要合成的文件名一:");
	scanf_s("%s", s1, 100);
	printf("请输入要合成的文件名二:");
	scanf_s("%s", s2, 100);
	printf("请输入合成后建立的文件名:");
	scanf_s("%s", s3, 100);
	/* 打开文件函数fopen_s(文件指针,文件地址,打开方式) */
	if (err = fopen_s(&fp1, s1, "rb") != NULL)//读取s1
	{
		printf("该文件不存在\n");
		system("pause");
		exit(0);
	}
	/* 打开文件函数fopen_s(文件指针,文件地址,打开方式) */
	if (err = fopen_s(&fp2, s2, "rb") != NULL)//读取s2
	{
		printf("该文件不存在\n");
		system("pause");
		exit(0);
	}
	/* 打开文件函数fopen_s(文件指针,文件地址,打开方式) */
	if (err = fopen_s(&fp3, s3, "wb") != NULL)//创建写入
	{
		printf("该文件不存在\n");
		system("pause");
		exit(0);
	}
	printf("正在合并文件请稍等....\n");
	/* 如果文件以二进制方式读取与存放的时候就只能使用feof函数EOF=-1,在二进制存放的时候会出现-1 */
	while (!feof(fp1))		//feof(文件指针)遇到文件结束时,返回非0值否则为0
	{
		x = fgetc(fp1);		//fgetc(文件指针)从文件指针读取一个字符,读取一个字节后,光标位置后移一个字节
		fputc(x, fp3);		//fputc()将字符x写到文件指针fp所指向的文件的当前写指针的位置
	}
	while (!feof(fp2))
	{
		x = fgetc(fp2);
		fputc(x, fp3);
	}

	fclose(fp1); fclose(fp2); fclose(fp3);
	printf("合并文件成功!\n");
	system("pause");
	return 0;
}

  

posted on 2015-04-20 22:40  小咒  阅读(176)  评论(0编辑  收藏  举报

导航