在 fs.promises.writeFile 期间创建缺失目录的标志
Flag to Create Missing Directories During fs.promises.writeFile
当我查看这些 file system flags 时,我得出的结论是正确的,即没有可以传递给 fs.promises.writeFile
的标志,它会自动创建通向文件名的所有缺失目录?如果不是,这是哪个标志?
我不喜欢在尝试 writeFile 之前首先检查文件夹是否存在的解决方案,因为在创建文件夹之后,每次写入该文件夹中的文件时都会进行检查。
在我的程序中,文件夹创建一次后,它应该一直存在,所以只有在出现异常时才创建文件夹似乎效率更高。但是,我希望有一个标志可以避免所有这些微观管理。
如果 writeFile 不存在自动创建文件夹的标志,那么我想先尝试 writeFile,然后(仅当有异常时)递归创建文件夹。
fs.promises.writeFile()
不会自动为您创建目录结构。那必须先存在。
如果因为收到指示路径问题的错误而希望自动创建路径,可以使用 fs.promises.mkdir()
并传递递归标志。
当然,您可以创建自己的调用 fs.promises.writeFile()
的包装函数,如果它在路径不存在时遇到任何错误(您必须测试以查看到底是什么该错误是),然后调用 fs.promises.mkdir()
,然后重复 fs.promises.writeFile()
。它可以全部包含在您自己的实用程序函数中。
当我查看这些 file system flags 时,我得出的结论是正确的,即没有可以传递给 fs.promises.writeFile
的标志,它会自动创建通向文件名的所有缺失目录?如果不是,这是哪个标志?
我不喜欢在尝试 writeFile 之前首先检查文件夹是否存在的解决方案,因为在创建文件夹之后,每次写入该文件夹中的文件时都会进行检查。
在我的程序中,文件夹创建一次后,它应该一直存在,所以只有在出现异常时才创建文件夹似乎效率更高。但是,我希望有一个标志可以避免所有这些微观管理。
如果 writeFile 不存在自动创建文件夹的标志,那么我想先尝试 writeFile,然后(仅当有异常时)递归创建文件夹。
fs.promises.writeFile()
不会自动为您创建目录结构。那必须先存在。
如果因为收到指示路径问题的错误而希望自动创建路径,可以使用 fs.promises.mkdir()
并传递递归标志。
当然,您可以创建自己的调用 fs.promises.writeFile()
的包装函数,如果它在路径不存在时遇到任何错误(您必须测试以查看到底是什么该错误是),然后调用 fs.promises.mkdir()
,然后重复 fs.promises.writeFile()
。它可以全部包含在您自己的实用程序函数中。