data-structures - 如何将文本文件读入 Erlang 中的 map ?

标签 data-structures erlang

我有一个这样的文本文件:

{fruit, [apple,banana,kiwi]}.
{car, [estate,hatchback]}.
{tree, [ebony,pine,ask,birch]}.
{planet, [earth]}.

我如何将它读入 map 或 Erlang 中的任何其他数据结构(以进一步迭代每个键及其各自的值)并最终打印 map ?

最佳答案

$ cat > things.txt
{fruit, [apple,banana,kiwi]}.
{car, [estate,hatchback]}.
{tree, [ebony,pine,ask,birch]}.
{planet, [earth]}.
$ erl
Erlang/OTP 20 [erts-9.3] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V9.3  (abort with ^G)
1> {ok, L} = file:consult("things.txt").
{ok,[{fruit,[apple,banana,kiwi]},
     {car,[estate,hatchback]},
     {tree,[ebony,pine,ask,birch]},
     {planet,[earth]}]}
2> maps:from_list(L).
#{car => [estate,hatchback],
  fruit => [apple,banana,kiwi],
  planet => [earth],
  tree => [ebony,pine,ask,birch]}

关于data-structures - 如何将文本文件读入 Erlang 中的 map ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50901497/

相关文章:

iphone - NSUserDefaults 与 NSKeyedArchiver

如果没有 RC4 支持,Erlang 将无法启动

mysql - 多级类别的数据库结构(最佳方法)

r - 用给定的长度和内容初始化列表

javascript - 按值排列的对象紧凑数组(Jquery 或 Underscore)

erlang - Erlang运行时错误

erlang - 为什么要为不是 named_table 的 ETS 表分配名称?

erlang - 是否可以将本地事件处理程序添加到远程事件管理器

Erlang - 使用预定义数据创建列表

C:结构数组(在结构数组中输入 int 数组)