如何在 elixir 中将 erlang 错误消息翻译成用户友好的文本
How to translate erlang error messages into user friendly text in elixir
我最近在尝试读取 elixir 中的文件时遇到以下错误。
iex()> File.read("no_existant_file.csv")
{:error, :enoent}
幸运的是我知道 "enoent" 是什么意思,并很快意识到这是因为我在文件名中有错别字。一旦我解决了这个问题,一切都按预期工作了。
然而,这让我想知道是否有办法将此错误消息更改为更多 "human friendly" 可能显示给最终用户的消息?
我在这个问题中使用的函数是 erlang 函数 :file.format_error
。
使用上面的例子
iex()> {:error, error_msg} = File.read("no_existant_file.csv")
{:error, :enoent}
iex()> error_msg
:enoent
iex()> :file.format_error(error_msg)
'no such file or directory'
使用 :file.format_error/1
我们可以看到错误现在更加用户友好
我最近在尝试读取 elixir 中的文件时遇到以下错误。
iex()> File.read("no_existant_file.csv")
{:error, :enoent}
幸运的是我知道 "enoent" 是什么意思,并很快意识到这是因为我在文件名中有错别字。一旦我解决了这个问题,一切都按预期工作了。
然而,这让我想知道是否有办法将此错误消息更改为更多 "human friendly" 可能显示给最终用户的消息?
我在这个问题中使用的函数是 erlang 函数 :file.format_error
。
使用上面的例子
iex()> {:error, error_msg} = File.read("no_existant_file.csv")
{:error, :enoent}
iex()> error_msg
:enoent
iex()> :file.format_error(error_msg)
'no such file or directory'
使用 :file.format_error/1
我们可以看到错误现在更加用户友好