标题:Can't open infile!
只看楼主
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:0 
#include "stdio.h"
#include "stdlib.h"
void main()
{
  FILE *in,*out;
  char infile[20],outfile[20];
  printf("Enter file_path like :d:\\chengxu\\....");
  printf("\nEnter infile_name :");
  scanf("%s",infile);
  printf("Enter outfile_name :");
  scanf("%s",outfile);
  if((in=fopen(infile,"r"))==NULL)
   {printf("Can't open infile!\n");
    exit(0);
   }
  if((out=fopen(outfile,"w"))==NULL)
   {printf("Can't open outfile!\n");
    exit(0);
   }
  while(!feof(in))
   {fputc(fgetc(in),out);
    printf("%c",fgetc(in));
   }
  fclose(in);
  fclose(out);
}
我不知道"stdlib.h"  这个库文件你在运行的时候加入的没有,我运行了一下,没发现问题。
不知道是不是这个问题。
还有就是确定文件路径和扩展名正确,再试试吧。
2009-09-28 17:56
xdyuan33
Rank: 3Rank: 3
来 自:广西大学化工学院
等 级:论坛游侠
帖 子:146
专家分:145
注 册:2009-7-24
得分:0 
回复 11楼 m456m654
stdlib.h我没加,我按二楼的说法输入可以,只是我后面加的那句输出出了点问题,输出结果很乱。不懂。。。

嗯,不管怎样多谢各位了!

[ 本帖最后由 xdyuan33 于 2009-9-28 18:09 编辑 ]

参与切磋是美德,每天回帖即可获得10分可用分!
2009-09-28 18:08
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
得分:0 
回复 12楼 xdyuan33
对,我也发现了,读过去的内容都乱套了。感觉是把原来的内容每隔一个字符就忽略一个字符跳着读过来的。
2009-09-28 18:18
xdyuan33
Rank: 3Rank: 3
来 自:广西大学化工学院
等 级:论坛游侠
帖 子:146
专家分:145
注 册:2009-7-24
得分:0 
while(!feof(in))
   {fputc(fgetc(in),out);
    printf("%c",fgetc(in));
   }
应该是这里出了问题了,好像要用rewind()从定位再输出,但不应该啊它们不都一个循环内吗
 while(!feof(in))
   fputc(fgetc(in),out);
 rewind(in);
 while(!feof(in))
   printf("%c",fgetc(in));
这样却是没问题了,晕晕晕...

参与切磋是美德,每天回帖即可获得10分可用分!
2009-09-28 23:07



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-287147-1-1.html




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

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