Erlang 将字符串列表转换为二进制并再次返回

Erlang 将字符串列表转换为二进制并再次返回,erlang,Erlang,我偶然发现了一个相当恼人的问题 我试图生成一个字符串列表的二进制文件,然后再返回。乙二醇 erlang:binary_to_list(erlang:list_to_binary(["hello", "world"]) 这将返回“helloworld”,而不是包含两个不同元素的列表。有人知道如何解决这个问题吗?一种解决方案可能是对每个元素进行编码,但可能有更优雅的解决方案?是的,您必须以某种方式对其进行编码。下面是将其编码为Erlang二进制术语格式的最简单方法 erlang:binary_to

我偶然发现了一个相当恼人的问题

我试图生成一个字符串列表的二进制文件,然后再返回。乙二醇

erlang:binary_to_list(erlang:list_to_binary(["hello", "world"])

这将返回“helloworld”,而不是包含两个不同元素的列表。有人知道如何解决这个问题吗?一种解决方案可能是对每个元素进行编码,但可能有更优雅的解决方案?

是的,您必须以某种方式对其进行编码。下面是将其编码为Erlang二进制术语格式的最简单方法

erlang:binary_to_term(erlang:term_to_binary(["hello", "world"]))

字符串仅仅是erlang中整数的列表,这些整数由列表到二进制完成。

Ah。我怎么没想到呢。谢谢:)