我打算使用fs.access
来查看一个目录是否存在,如果它存在,则将一个文件写入该目录,如果不存在,则首先创建目录,然后将文件写入其中。
但是在文档中,它说不建议在调用fs.open()之前使用fs.access()检查文件的可访问性,不建议使用fs.readFile()或fs.writeFile()。这样做会引入争用条件,因为其他进程可能会在两次调用之间更改文件的状态。
相反,用户代码应该直接打开/读取/写入文件,并处理在文件无法访问时引发的错误。
有没有推荐的方法先检查再写?
正如您刚刚引用的文档所说,推荐的方法是简单地使用 fs.open()
、 fs.readFile()
或 fs.writeFile()
来尝试加载文件,并在它抛出错误时处理错误。