C语言 fopen为什么打开不了txt文件 10
我的部分code如下,filename已经定了为了简介就没有一起给出;我已经在在该程序的文件夹里建立了对应的txt文件,但是debug的时候老是提示程序已停止。。。。FI...
我的部分code如下,filename已经定了为了简介就没有一起给出;
我已经在在该程序的文件夹里建立了对应的txt文件,但是debug的时候老是提示程序已停止。。。。
FILE *fp;
fp=fopen(filename,"r");
if((fp=fopen(filename,"r"))==NULL)
{
printf("Input file not found.");
exit(0);
}
前面已经定义字符串filename[31]=“planetext.txt" 展开
我已经在在该程序的文件夹里建立了对应的txt文件,但是debug的时候老是提示程序已停止。。。。
FILE *fp;
fp=fopen(filename,"r");
if((fp=fopen(filename,"r"))==NULL)
{
printf("Input file not found.");
exit(0);
}
前面已经定义字符串filename[31]=“planetext.txt" 展开
6个回答
展开全部
你好,我是大鱼儿不吐泡泡,用百度网盘分享给你,点开就可以保存,链接永久有效^_^
如果有另外想要的资源或者链接失效,可以使用百度网盘推出的【收集文件】功能进行提问收集资源哦,无需转存简单快捷,功能链接:https://pan.baidu.com/disk/main#/transfer/list 微信小程序、百度网盘app、web端都已上线
如果有另外想要的资源或者链接失效,可以使用百度网盘推出的【收集文件】功能进行提问收集资源哦,无需转存简单快捷,功能链接:https://pan.baidu.com/disk/main#/transfer/list 微信小程序、百度网盘app、web端都已上线
展开全部
fopen这个函数是可以打开txt文件。打不开有以下原因
文件路径不对,请检查相对路径与绝对路径是否写的正确。
打开一个不存在的文件,请检查该文件是否存在
一下权限是需要在打开时文件就已经存在了
r 以只读方式打开文件,该文件必须存在。
r+ 以可读写方式打开文件,该文件必须存在。
rb+ 读写打开一个二进制文件,允许读写数据,文件必须存在。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把多写的一句 fp=fopen(filename,"r"); -- 删去。
debug的时候,可执行程序在 Debug 文件夹,你已建文件默认 必须存在于 Debug 文件夹。
filename 字符串 含文件夹和路径时,注意单斜杠要写成双斜杠。
MS VC++ 6.0 是较成熟的编译器,一个平台上产生的EXE 可在多种平台上工作。
程序头文件以前,写上一句(一行宏定义):
#define WINVER 0x0602
就能很好地在 Win-8 Win-7 等上运行。
debug的时候,可执行程序在 Debug 文件夹,你已建文件默认 必须存在于 Debug 文件夹。
filename 字符串 含文件夹和路径时,注意单斜杠要写成双斜杠。
MS VC++ 6.0 是较成熟的编译器,一个平台上产生的EXE 可在多种平台上工作。
程序头文件以前,写上一句(一行宏定义):
#define WINVER 0x0602
就能很好地在 Win-8 Win-7 等上运行。
追问
还是不行诶。。。我加了define删了多写的一句还是不行。。。。。。。
我用calloc给filename命名输入字符串之后,在fopen里打开文件,debug的时候一直说程序stop working~
用puts来检查文件名,用strlen检查长度,比如文件名 a.txt,puts显示出来也是a.txt,strlen计算长度是5,都是没有错误的~
追答
查实际文件名,和你程序用的文件名是否一样。然后
开一个命令窗(DOS cmd 窗),进入 Debug 文件夹。
运行你的程序。
--------------------------------
FILE *fp;
char filename[]="planetext.txt";
if((fp=fopen(filename,"r"))==NULL)
{
printf("Input file not found.");
exit(0);
} else printf("Good !\n");
------------------------------------
还有办法,先建a.txt,再读:
FILE *fp;
char filename[]="a.txt";
int a,b;
fp=fopen(filename,"w");
fprintf(fp,"123 456\n");
fclose(fp);
fp=fopen(filename,"r");
fscanf(fp,"%d %d",&a,&b);
fclose(fp);
printf("a=%d b=%d\n",a,b);
system("pause");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
FILE *FP
fp = fopen("F:\\filename.txt","r"); //打开F盘中的filename文件,要这样打开
if(fp==NULL)
{
printf("Input file not found.");
exit(0);
}
fp = fopen("F:\\filename.txt","r"); //打开F盘中的filename文件,要这样打开
if(fp==NULL)
{
printf("Input file not found.");
exit(0);
}
更多追问追答
追问
那如果要建立一个新的txt怎么办呢,fopen建立的txt文件就是在visual studio对应project的根目录里的吧
那如果要建立一个新的txt怎么办呢,fopen建立的txt文件就是在visual studio对应project的根目录里的吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
"filename.txt"才对
更多追问追答
追问
没啦~我在前面已经定义字符串filename[31]=“planetext.txt"了~所以应该不是这个原因吧~
追答
去掉一句fp=fopen(filename,"r");试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询