Elixirには次の機能がありますか?
現在、このような関数を作成していますが、親がまだ存在しない可能性のあるファイルに書き込みたいすべてのプロジェクトでこれを作成するのはかなり不便です。
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)
標準ライブラリにはそのようなものはありません。なぜこれをしないのですか?
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
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加