将json写为文件Elixir

时间:2016-01-27 15:07:36

标签: json elixir

我做了以下有更好的方法吗?:

File.write("../hello", Poison.encode!(some_stuff))

1 个答案:

答案 0 :(得分:13)

您缺少第三个参数,即模式选项。像这样的东西会起作用:

File.write("../hello", Poison.encode!(some_stuff), [:binary])

除了缺少的论点,你所拥有的是一行易于理解的代码。使用encode!时,如果编码失败,将引发异常。如果要确保成功写入文件而不检查File.write/3的返回值,则应使用File.write!/3。使用File.write!/3更符合Erlang的“让它崩溃”的理念(http://learnyousomeerlang.com/errors-and-exceptions)。虽然这完全取决于这条线的背景......