c语言保存文件到指定的路径和文件名

 我来答
匿名用户
推荐于2018-03-08
展开全部
fp=fopen(filename,"wb");
里的filename就表示了文件的路径及文件名,所以要把输入的文件名和文件路径拼接起来,计算出这个filename
最好过滤一下别让路径和文件名中有非法字符,比如:\/+<>什么的。
scanf也限制一下长度。
scanf("%19s",filename);
scanf("%19s",path);
参考如下:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *fp;
char ch, filename[20], path[20],buffer[40];
printf("Enter the file name: ");
scanf("%s",filename);
printf("Enter the path: ");
scanf("%s"竖腊,path);
sprintf(buffer, "%s\\%s"埋汪, path,filename);
printf("\nto end input ,press Ctrl+Z in newline,then ENTER:\n");
if((fp=fopen(buffer,"wt+"))==NULL)
{
printf("no such path, \nstrike any key exit!");
getch();
exit(1);
}
while ((ch=getchar())!=-1) ch=fputc(ch,fp);
fclose(fp);
printf("==================================\n\n");
printf("file path \余液滑"%s\" \nfile name \"%s\":\nand its content:\n",path,filename);
fp=fopen(buffer,"rt");
while ((ch=fgetc(fp))!=-1) putchar(ch);
fclose(fp);
return 0;
wuxixing
2013-01-09 · 超过17用户采纳过TA的回答
知道答主
回答量:83
采纳率:0%
帮助的人:46.8万
展开全部
你是要复制过去还是代码写一个东西放到指定的路径和文件名
追问
先打开一个文件,编辑完后再保存到指定路径,打开文件已经写好了
追答
先在指定路径新建一个文件,再把编辑完后的内容保存进去。
int fd2;
fd2=open(指定路径/文件名,O_WRONLY|O_CREAT, 0777);
write(fd2,s,sizeof(s)); //s代表你修改后的内容

close(fd2);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式