2016-06-22 11 views
2

У меня есть поток, который я читаю и в свою очередь пишу в файл, однако получаю сообщение об ошибке, вызванное наличием . Я предполагаю, что это потому, что я открываю файл ж/неправильное кодирование или что-то, но я не знаю, как правильно установить его:Ошибка no_translation при попытке записать символы Юникода в файл в Elixir

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

Это приводит к следующей ошибке:

** (ErlangError) erlang error: :no_translation (stdlib) :io.put_chars(#PID<0.250.0>, :unicode, "’")

ответ

5

Вам следует открыть файл в режиме :utf8.

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

 Смежные вопросы

  • Нет связанных вопросов^_^