把fopen后面的两个参数写上就ok 了.第一个是文件路径
底二个是打开方式,我用的是追加写,就是如果没有文件就新建一个,有就写在文件尾
C语言创建新文件可用fopen()函数的"w"(写)方式打开文件,即可。如果文件存在,将会清空现有的文件;如果不存在,则会创建该文件。
若要将文件创建到指定的文件夹下,则,在fopen()函数中的文件名,带上路径名就可以了。但,程序如果对该文件夹没有写权限,则fopen()会返回NULL。
参考代码:
#include <stdio.h>void main()
{
char filename[100]
char filepath[100]
char file[200]
FILE *fp
printf("input filename: ")scanf("%s", filename )
printf("input filepath: ")scanf("%s", filepath )
sprintf(file,"%s/%s", filepath,filename )
fp=fopen(file,"w")
if ( fp==NULL )
{
printf("open file:%s error\n",file )
return
}
fputs("this is a test!",fp)
fclose(fp)
}
不妨可以定义一个指针比如char *p=""
scanf("%s",p)
fp=fopen(p,"r")
这样就可以通过scanf自己输路径了
思路就是fp=fopen("abc.txt","r")
等价于char *p="abc.txt"fp=fopen(p,"r")
里面可能还有些技术上的问题,稍加修改一下,应该没问题吧
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)