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

Kyl*_*cot 6 unicode erlang elixir latin1

我有一个我正在阅读的流,然后我正在写一个文件但是我收到的错误是由于存在一个.我假设这是因为我打开文件错误的编码或其他东西,但我不知道如何正确设置它:

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

这会导致以下错误:

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

tom*_*tom 11

您应该以:utf8模式打开文件.

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