C语言 如何创建文件到指定文件夹

C语言如何创建文件到指定文件夹... C语言 如何创建文件到指定文件夹 展开
 我来答
kaixingui2012
2015-09-27 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6444万
展开全部
  • 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);
}
rui_xing_
推荐于2017-12-15 · 知道合伙人教育行家
rui_xing_
知道合伙人教育行家
采纳数:6306 获赞数:51261
在读博士研究生

向TA提问 私信TA
展开全部

具体代码如下:

#include<stdio.h>
int a;
char b,c[100];
int main(){
    FILE * fp1 = fopen("input.txt", "r");//打开输入文件
    FILE * fp2 = fopen("output.txt", "w");//打开输出文件
    if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出
        puts("不能打开文件!");
        return 0;
    }
    fscanf(fp1,"%d",&a);//从输入文件读取一个整数
    b=fgetc(fp1);//从输入文件读取一个字符
    fgets(c,100,fp1);//从输入文件读取一行字符串
    
    printf("%ld",ftell(fp1));//输出fp1指针当前位置相对于文件首的偏移字节数
    
    fputs(c,fp2);//向输出文件写入一行字符串
    fputc(b,fp2);//向输出文件写入一个字符
    fprintf(fp2,"%d",a);//向输出文件写入一个整数
    
    fclose(fp1);//关闭输入文件
    fclose(fp2);//关闭输出文件,相当于保存
    return 0;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
walfhunter
2010-01-27 · TA获得超过143个赞
知道答主
回答量:134
采纳率:0%
帮助的人:53.3万
展开全部
文件句柄指针=fopen(文件名字符串,文件打开方式字符串)
第一个参数是包含文件名的字符串,第二个参数是包含一个或多个文件说明的字符串。
对于说明字符串有“r”“w”“a”“r+”“w+”“a+”“rb”“wb”“ab”等,而能创建文件的有“w”“a”“r+”“w+”“a+”。都是在文件不存在时创建,但具体功能不一样。具体如下:
“r”以只读的方式打开文本文件,如果文件不存在,也不创建它。
“w”以只写的方式打开文本文件,如果文件以存在,则把它清空,若文件不存在,则创建它。
“a”以写的方式打开文本文件,新的数据加到文件尾。如果文件不存在,则创建它。
“r+”以读写的方式打开文本文件,假定先读,所以当前位置指针在文件开头。如果文件不存在,则创建它。
“w+”以写读的方式打开文本文件,假定先写。如果文件以存在,则把它清空;若文件不存在,则创建它。
其他的我就不介绍了,望你能明白。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wo370506875
2010-01-27 · TA获得超过313个赞
知道小有建树答主
回答量:453
采纳率:0%
帮助的人:310万
展开全部
FILE *fp
fp=fopen("位置","w");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-01-27
展开全部
用fopen时指明具体的文件夹就可以了。

fp=fopen("c:\\windows\\a.c","w");

这样,如果c:\windows目录下没有a.c,就会新建。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式