13.2.5 删除目录或文件操作
删除目录操作可使用函数rmdir()完成,该函数的一般形式是:rmdir(路径),该函数必须是在该目录下没有子目录或文件的情况下才能运行。删除文件操作可使用函数unlink(),该函数的一般形式是:
unlink(路径);
如下例所示:
if(mkdir("testdir", 0774) != -1) // 创建一个新目录
puts("创建目录成功");
else
return 1;
if (creat("test1", 0664) != -1) // 创建一个新文件
puts("创建文件成功");
else
return 1;
if (unlink("test1") != -1) // 删除刚才创建的文件
puts("删除文件成功");
else
return 1;
if (rmdir("testdir") != -1) // 删除刚才创建的目录
puts("删除目录成功");
else
return 1;
如上例所示,很多软件里实现的临时文件就是通过这种方式创建的。在程序运行时创建文件,在程序结束前删除文件。但这并不是最好的选择,因为如果程序意外终止会留下无法清理的文件。在Linux系统中创建临时文件可使用mkstemp()函数,该函数的一般形 式是:
mkstemp(文件名XXXXXX);
mkstemp()函数会以可读写模式和0600权限来打开该文件,如果该文件不存在则会建立该文件。打开该文件后其文件描述符会返回,如果文件打开或创建失败则返回NULL。需要注意的是,文件名必须是用字符串“XXXXXX”结尾。
本文介绍了如何使用rmdir()和unlink()函数进行目录及文件的删除操作,并探讨了通过mkdir()和creat()函数创建目录与文件的方法。此外,还讨论了在Linux环境下创建临时文件的最佳实践,包括使用mkstemp()函数。
543

被折叠的 条评论
为什么被折叠?



