私はElixirのファイルのmd5の合計を計算する必要がありますが、これはどのように達成できますか? 私は何かのようなことを期待する:Mix.Utilsのエリクサーでファイルチェックサムを計算するにはどうすればよいですか?
iex(15)> {:ok, f} = File.open "file"
{:ok, #PID<0.334.0>}
iex(16)> :crypto.hash(:md5, f)
** (ArgumentError) argument error
:erlang.iolist_to_binary(#PID<0.334.0>)
(crypto) crypto.erl:225: :crypto.hash/2
しかし、はっきり、それは動作しません。..
ドキュメントはread_path機能linkについて伝えますが、それはどちらかの仕事をしませんでした。
iex(22)> Mix.Utils.read_path("file", [:sha512])
{:ok, "Elixir"} #the expected was {:checksum, "<checksum_value>"}
このような機能を簡単に提供するライブラリはありますか?
Releventブログ記事:http://www.cursingthedarkness.com/2015/04/how-to-get-hash-of-file-in-exilir.html –