C语言:已知有a.txt和b.txt两个数据文件,请将b文件的数据合并到a文件

 我来答
左手烟雨
2012-12-27 · TA获得超过785个赞
知道小有建树答主
回答量:446
采纳率:100%
帮助的人:251万
展开全部
以追加的方式打开文件a.txt,即fopen("a.txt", "a");
以只读方式打开文件b.txt,即fopen("b.txt", "r");
每次从b中读取一定长度的数据,并写入到文件a中,(例如1024字节)
直到将b中所述数据读完并写到a中
追问
main函数部分该如何写啊~~~~求助了。谢谢
追答
#include 
void main() {
FILE *fp1, *fp2;
char buf[1024];
int len;
fp1 = fopen("a.txt", "a");
fp2 = fopen("b.txt", "r");
if ((fp1==NULL)||(fp2==NULL)){
printf("打开文件失败!\n");
return;
}
while (!feof(fp2)) {
len = fread(buf, 1, 1024, fp2);
fwrite(buf, 1, len, fp1);
}
fclose(fp2);
fclose(fp1);
}
pardream941026
2012-12-27 · TA获得超过8217个赞
知道大有可为答主
回答量:4602
采纳率:89%
帮助的人:1341万
展开全部
#include <stdio.h>
void main() {
FILE *fp1, *fp2;
char buf[1024];
int length;
fp1 = fopen("a.txt", "w+");
fp2=fopen("b.txt", "r");
fseek(fp1, 0, SEEK_END);

while ((length=(fread(buf, 1024,1, fp2))<=1024) {
fwrite(buf, length, 1, fp1);
}
fclose(fp2);
fclose(fp1);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
别吓唬我
2012-12-27
知道答主
回答量:46
采纳率:0%
帮助的人:15.6万
展开全部
把b文件拷贝到a文件后不可以吗?
追问
那main函数该如何编写~~~
追答
大体思路应该是这样的

如果有对文件操作的 API就直接使用该API

如果没有就打开B文件,把该文件的所有字符都读入缓冲区

然后从缓冲区在写到A文件里就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
南宫小雪儿
2012-12-27
知道答主
回答量:3
采纳率:0%
帮助的人:4582
展开全部
不会啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式