C语言文件怎样合并?

C语言文件怎样合并?,第1张

#include \x0d\x0aconst int MAX_SIZE_PER_LINE = 1024\x0d\x0a\x0d\x0aint main(int argc, char *argv[])\x0d\x0a{\x0d\x0a FILE * file_a,*file_b,*file_c\x0d\x0a char buffer[MAX_SIZE_PER_LINE*2]\x0d\x0a file_a = fopen("a.txt","r")\x0d\x0a file_b = fopen("b.txt","r")\x0d\x0a file_c = fopen("c.txt","w")\x0d\x0a while(NULL != fgets(buffer ,MAX_SIZE_PER_LINE,file_a))\x0d\x0a {\x0d\x0a //不是最后一行肯定会有换行符,消除这个换行符 \x0d\x0a if('\n' == buffer[strlen(buffer)-1]) \x0d\x0a fgets(buffer+strlen(buffer)-1 ,MAX_SIZE_PER_LINE,file_b)\x0d\x0a //对于最后一行可能没有换行符的冲答枯情况特殊处理 \x0d\x0a else\x0d\x0a fgets(buffer+strlen(buffer) ,MAX_SIZE_PER_LINE,file_b) \x0d\x0a fputs(buffer,file_c)\x0d\x0a }\x0d\x0a fclose(file_a)\x0d\x0a fclose(file_b)\x0d\x0a fclose(file_c) \x0d\x0a return 0\x0d\x0a}\x0d\x0a\x0d\x0a/*\x0d\x0aA.txt : \x0d\x0a-------\x0d\x0aaa*\x0d\x0abb*\x0d\x0acc*\x0d\x0add*\x0d\x0aee*\x0d\x0aff*\x0d\x0agg*\x0d\x0a\x0d\x0aB.txt : \x0d\x0a-------\x0d\x0a11\x0d\x0a22\x0d\x0a33\x0d\x0a44\x0d\x0a55\x0d\x0a66\x0d\x0a77\x0d\x0a\x0d\x0aC.txt :\x0d\x0a-------\x0d\x0aaa*11\x0d\x0abb*22\x0d\x0acc*33\x0d\x0add*44\x0d\x0aee*55\x0d\x0aff*66\x0d\x0agg*77 \x0d\x0a\x0d\x0a说明:散洞 A.txt 和 B.txt 要放在可执行程序同一个目录下。C.txt 会自动在这个目录举信下生成。 \x0d\x0a*/

文件的合并要使用到FILE类型,以及文件的打开关闭,下面以图片文件和其它类型的文件进行合并为例,说说文件的合并:

#include

#include

void main()

{

FILE *fp,*ff,*ftt

char ch

char fn1[20],fn2[20],ft[20]

printf("\t\姿兆渗t\猜闹t\t图片文件合成器\n")

printf("输入要合成的图片名称:")

scanf("%s",fn1)

printf("输入要合成的文件名称:")

scanf("%s",fn2)

printf("生成的名称:")

scanf("%s",ft)

if(!(fp=fopen(fn1,"rb")))//当不能打开图片文件的提示处理

{

printf("不能打开图片%s\n",fn1)

return

}

if(!(ff=fopen(fn2,"rb")))

{

printf("不能打开文件%s",fn2)

return

}

if(!(ftt=fopen(ft,"wb")))

{

printf("不能打开%s",ft)

return

}

while(!(feof(fp) ))//写入图片文件

{

ch=fgetc(fp)

fputc(ch,ftt)

}

fclose(fp)

while(!(feof(ff)))//写入其它类型的文件

{

ch=fgetc(ff)

fputc(ch,ftt)

}

fclose(ff)

fclose(ftt)

system("pause")

}要注意了,这个例子涉及的文件均要在cpp文件的同一级目录,要是不迹脊在同一级目录则要输入文件的路径,合成的文件也在cpp文件的目录下。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12256885.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存