二进制字符到易读字符串?

时间:2016-03-28 17:11:28

标签: elixir

我对Elixir中的二进制文件和字符串感到困惑。我有一个功能。返回表示字符串的二进制字符代码,但我无法弄清楚如何以清晰的方式打印该字符串。我正在考虑将二进制文件转换为字符列表,然后枚举字符列表并将每个字符串转换为字符串,但这似乎很多工作。还有更好的方法吗?

1 个答案:

答案 0 :(得分:7)

尝试String.chunk/2

iex(1)> a = "Hello " <> <<0>> <> "World"
<<72, 101, 108, 108, 111, 32, 0, 87, 111, 114, 108, 100>>
iex(2)> String.chunk(a, :printable)     
["Hello ", <<0>>, "World"]

http://elixir-lang.org/docs/stable/elixir/String.html#chunk/2