butter71 правильно, что вы не сможете просто распечатать термин и интерпретировать двоичные файлы как Unicode. Сначала вам нужно изолировать двоичные файлы. При печати двоичных файлов вам также необходимо использовать 't', что позволит вам печатать символы вне диапазона latin1. Смотри: http://www.erlang.org/doc/man/io_lib.html#format-2
Вот пример распечатки чего-то похожего на вас. Я использую Unicode: characters_to_binary, чтобы преобразовать то, что я ввел в UTF8. Простое выполнение << "¿, ©, ō" >> вызовет исключение.
Msg = [{field1, unicode:characters_to_binary("¿,©,ō")}, {field2, ...}, ...]
[{field1, Field1}|_] = Msg.
io:format("~ts~n", [Field1]).
¿,©,ō
ok
io:format("~s~n", [Field1]).
¿,©,Å
ok
Как вы можете видеть, пример без 't' производит искаженный текст.
Если вы собираетесь попробовать пройтись по структуре, чтобы преобразовать ее в строку и распечатать, посмотрите на iolists.