Elixir中是否有以下功能:
目前,我已经写了一个像这样的函数,尽管它相当
不方便为我要写入文件的每个项目编写此文件
他们的 parent 可能还不存在。
defp write_to_file(path, contents) do
with :ok <- File.mkdir_p(Path.dirname(path)),
:ok <- File.write(path, contents)
do
:ok
end
end
最理想的情况是这样的东西作为Elixir标准库的一部分存在,但是我找不到这样的东西
File.write(path, content, create_parents: true)
最佳答案
standard library中没有类似的内容。尽管为什么不这样做:
File.mkdir_p!(Path.dirname(path))
File.write(path, contents)
但是,如果您想传递
mkdir
的错误,则可以将代码简化如下:with :ok <- File.mkdir_p(Path.dirname(path)) do
File.write(path, contents)
end
关于file-io - Elixir:写入文件并创建父目录(如果不存在)-一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53877076/