临时文件夹在哪(临时文件夹在哪个位置)

c输入和输出库函数除了可以操作文件之外,还可以操作目录(文件夹):

1指定一个目录作为当前目录。

# include & ltdirect.h & gt// vc,TC:dir . h # include & lt;stdio.h & gt# define MAX _ PATH 255 int main(){ char PATH[MAX _ PATH];getcwd(path,MAX _ PATH);//获取当前工作目录printf(& # 34;% s \ n & # 34,路径);if(chdir(& # 34;丁:& # 34;)==0){ //更改当前目录getcwd(path,MAX _ PATH);//获取当前目录printf(路径);} getchar();}2创建和删除目录(文件夹)

# include & ltdirect.h & gt# include & ltstdlib.h & gt# include & ltstdio.h & gtint main(){ rmdir(& # 34;c:\ \ test & # 34;);//删除文件夹,如果(mkdir(& # 34;c:\ \ test & # 34;)==0){ //创建新的目录系统(& # 34;启动c:\ \ test & # 34;);} getchar();}3找到指定的文件

# include & ltio.h & gt# include & ltstdio.h & gtint(){//文件查找长句柄;struct _ finddata _ t fileInfoif((handle = _ findfirst(& # 34;D:\\*。txt & # 34,& fileInfo))= =-1L)printf(& # 34;找不到匹配的项目\ n & # 34);else { printf(& # 34;% d \ n & # 34,手柄);printf(& # 34;% s \ n & # 34,fileinfo . name);while(_findnext(handle,& fileInfo)= = 0)printf(& # 34;% s \ n & # 34,fileinfo . name);_ find close(handle);} getchar();}4创建临时文件

用唯一的名字创建临时文件:推荐tmpfile和mkstemp,因为这两个函数同时创建和打开文件,一般是安全可靠的。Tmpfile返回文件流指针file *,mkstemp返回文件描述符。

# include & ltstdio.h & gt# include & ltstdlib.h & gtint main(){ char tmpname[L _ tmpnam];char *文件名;FILE * tmpfpif((filename = tmpnam(tmpname))!= NULL) //方法一:不建议使用{ printf(& # 34;临时文件名是:% s \ n & # 34,文件名);printf(& # 34;临时tmpnam是:% s \ n & # 34,tmpname);//一开口,文件名就和tmpnam fopen(tmpname,& # 34;r & # 34);perror(& # 34;打开& # 34;);fopen(文件名,& # 34;r & # 34);perror(& # 34;打开& # 34;);} tmpfp = tmpfile();//方法二:if(tmpfp)printf(& # 34;打开了一个临时文件OK \ n & # 34);else perror(& # 34;tmpfile & # 34);getchar();}/*临时文件名是:\s5tg。Temporary tmpnam是:\ S5.open:没有打开这样的文件或目录:没有打开这样的文件或目录一个临时文件ok */mktemp()类似于tmpnam,只是名称部分可以由template确定,template后面的六个字符必须是x,例如tmpXXXXXX。

# include & ltstdlib.h & gt# include & ltstdio.h & gt# include & ltio.h & gt//char * mktemp(char * template);int main(int argc,char * argv[]){ char filename[]= & # 34;温度-XXXXXX & # 34;;char * nameif((name = mktemp(filename))= = NULL){ perror(& # 34;mktemp & # 34);出口(1);} printf(& # 34;名称:%s\n文件名:% s \ n & # 34,名称,文件名);getchar();}/*名称:temp-a04108文件名:temp-a 04108 */创建多个:

# include & ltio.h & gt# include & ltstdio.h & gt# include & ltstring.h & gt# include & lt错误号& gtint(){//创建一个临时文件char * templat = & # 34fnXXXXXX & # 34;char *结果;字符名称[5][9];int I;FILE * fpfor(I = 0;我& lt5;i++ ) { strcpy( names[i],templat);result = _ mktemp(names[I]);//注意:_mktemp已被弃用;如果(result = = NULL){ printf(& # 34;创建模板时出现问题\ n & # 34);if(errno = = ein val){ printf(& # 34;错误的参数\ n & # 34);} else if(errno = = e exist){ printf(& # 34;出唯一的文件名\ n & # 34);} } else { fp = fopen(result,& # 34;w & # 34);if( fp!= NULL)printf(& # 34;唯一的文件名是% s \ n & # 34,结果);else printf(& # 34;无法打开% s \ n & # 34,结果);fclose(FP);} } getchar();}与mktemp函数不同:mkstemp的返回值是文件描述符,mktemp的返回值是文件名指针。

# include & ltstdlib.h & gt# include & ltstdio.h & gt# include & ltio.h & gtint main(){ int FD;char tmpfile[]= & # 34;温度-XXXXXX & # 34;;if((FD = mkstemp(tmpfile))& lt;0){ perror(& # 34;mkstemp & # 34);出口(1);}关闭(FD);退出(0);}5文件重命名

# include & ltstdio.h & gtint main(void){ char oldname[80],newname[80];/*提示重命名文件并输入新名称*/printf(& # 34;要重命名的文件:& # 34;);获取(旧名称);printf(& # 34;新名字:& # 34;);获取(新名称);/*重命名文件*/ if (rename(oldname,newname)= = 0)printf(& # 34;已将%s重命名为%s,\ n & # 34,oldname,newname);else perror(& # 34;重命名& # 34;);getchar();返回0;}/*要重命名的文件:d: \ test.txt新名称:d: \ demo.txt重命名为d: \ test.txt改为d: \ demo.txt. */6文件删除

# include & ltstdio.h & gtint main(void){ char file[80];/*提示输入要删除的文件名*/printf(& # 34;要删除的文件:& # 34;);获取(文件);/*删除文件*/if(remove(file)= = 0)printf(& # 34;已删除%s,\ n & # 34,文件);else perror(& # 34;删除& # 34;);getchar();返回0;}/*要删除的文件:d:\demo.txt已删除d:\demo.txt.*/ref:

https://www.apiref.com/c-zh/h_dir.htm

本文标题:临时文件夹在哪(临时文件夹在哪个位置)

本文地址:https://www.xbwxq.com/a/21285.html

本文来自投稿,仅供学习参考!不代表本站立场,该文观点仅代表原作者本人,本站不拥有所有权,不承担相关法律责任。如发现本站有抄袭侵权/违规的内容,请发送邮件至8###7@qq.com举报,一经查实,本站将立刻删除。