尝试将unicode字符写入Elixir中的文件时出现no_translation错误

时间:2016-06-22 13:56:35

标签: unicode erlang elixir latin1

我有一个我正在阅读的流,然后我正在写一个文件但是我收到的错误是由的存在引起的。我认为这是因为我打开了错误编码的文件,但我不知道如何正确设置它:

file = File.open!("/some/path.csv", [:write])
IO.write(file, "’")

这会导致以下错误:

  

**(ErlangError)erlang错误:: no_translation(stdlib):io.put_chars(#PID< 0.250.0>,:unicode,"'")

1 个答案:

答案 0 :(得分:9)

您应该以{{1​​}}模式打开文件。

file = File.open!("/tmp/foo.txt", [:write, :utf8])
IO.write(file, "’")