Como converter um binário Elixir em uma string?
Então, eu estou tentando converter um binário em uma string. Este código:
t = [{<<71,0,69,0,84,0>>}]
String.from_char_list(t)
Mas estou recebendo isso quando tento esta conversão:
** (ArgumentError) argument error
(stdlib) :unicode.characters_to_binary([{<<70, 0, 73, 0, 78, 0>>}])
(elixir) lib/string.ex:1161: String.from_char_list/1
Estou assumindo que << 70, 0, etc. é provavelmente uma lista de grafemas (é o retorno de uma chamada de API e a API não está totalmente documentada), mas preciso especificar a codificação de alguma forma?
Eu sei que provavelmente estou perdendo algo óbvio (talvez essa não seja a função correta a ser usada?), Mas não consigo descobrir o que fazer aqui.
EDITAR:
Pelo que vale, o binário acima é o valor de retorno de uma chamada ODL Erlang. Depois de um pouco mais de pesquisa, descobri que o binário em questão é realmente um "binário Unicode codificado como UTF16 little endian" (veja aqui:http://www.erlang.org/doc/apps/odbc/odbc.pdf pág. 9 re: SQL_WVARCHAR) Realmente não altera o problema, mas adiciona algum contexto.