| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1940 人关注过本帖
标题:复制一个文本文件到另一个总是在尾部多一字符
只看楼主 加入收藏
mxyklhh
Rank: 1
等 级:新手上路
帖 子:19
专家分:3
注 册:2016-6-30
收藏
得分:0 
如下这样可以了:
#include <stdio.h>
#include <stdlib.h>
void main()
{ FILE *fp1, *fp2;
  int i=1;
  char c;
  if ((fp2=fopen("c:\\lhh\\f2.txt", "r"))==NULL)
     { printf("Can not open file!\n"); exit(0);}
  if ((fp1=fopen("c:\\lhh\\f1.txt", "w"))==NULL)
     { printf("Can not open file!\n"); exit(0);}
  while (i=1)
     {  c=fgetc(fp2);
        if (feof(fp2)) break;
        fputc(c,fp1);
      }
  fclose(fp1);
  fclose(fp2);
}
2016-06-30 13:17
linlulu001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:20
帖 子:944
专家分:4047
注 册:2016-4-13
收藏
得分:0 
feof读完最后一个字符后,仍然没有探测到文件结尾。直到再次调用fgetc()执行读操作,feof()才能探测到文件结尾。这样就多输出了一个-1.
2016-06-30 13:23
mxyklhh
Rank: 1
等 级:新手上路
帖 子:19
专家分:3
注 册:2016-6-30
收藏
得分:0 
回复 10楼 江台
你这样的也可以,有点不懂原理
2016-06-30 13:27
mxyklhh
Rank: 1
等 级:新手上路
帖 子:19
专家分:3
注 册:2016-6-30
收藏
得分:0 
回复 12楼 linlulu001
有点明白了,多谢多谢
2016-06-30 13:29
快速回复:复制一个文本文件到另一个总是在尾部多一字符
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015646 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved