我真的很感激任何帮助。 我想转换此列表
[[{id1,1},{id2,2},{id3,3},{id4,4}],[{id1,5},{id2,6},{id3,7},{id4,8}],[...]]
到JSON对象。 需要一些灵感:) 请帮忙。
谢谢。
答案 0 :(得分:2)
既然你要求灵感,我可以想象你可以采取的两个方向
您可以编写代码来手动编写自己的JSON,如果您的需求足够适合,可以是一个非常轻量级和适当的解决方案。获取一个数据结构并将其转换为JSON将是非常简单的Erlang。
“[[{\” ID1 \ “:1},{\” ID2 \ “:2},{\” ID3 \ “:3},{\” ID4 \“:4}],[{\ “id1 \”:5},{\“id2 \”:6} {\“id3 \”:7},{\“id4 \”:8}]]“
您可以生成mochiweb的mochijson:encode / 1和decode / 1可以处理的数据结构。我拿了你的清单并用手将其编码为JSON,得到:
X =“[[{\”id1 \“:1},{\”id2 \“:2},{\”id3 \“:3},{\”id4 \“:4}],[ {\ “ID1 \”:5},{\ “ID2 \”:6},{\ “ID3 \”:7},{\ “ID4 \”:8}]]”
立> 醇>然后我使用了mochison:decode(X)来查看mochiweb用来表示JSON的结构(懒得查看文档)。
Y = mochijson:decode(X).
{array,[{array,[{struct,[{"id1",1}]},
{struct,[{"id2",2}]},
{struct,[{"id3",3}]},
{struct,[{"id4",4}]}]},
{array,[{struct,[{"id1",5}]},
{struct,[{"id2",6}]},
{struct,[{"id3",7}]},
{struct,[{"id4",8}]}]}]}
因此,如果您可以创建这个稍微更精细的数据结构,那么您可以使用mochijson:encode / 1来获取JSON。这是一个在io:format语句中嵌入的示例,以便将其打印为字符串 - 通常您将使用io_lib:format / X,具体取决于您的应用程序。
io:format("~s~n",[mochijson:encode(Y)]).
[[{"id1":1},{"id2":2},{"id3":3},{"id4":4}],[{"id1":5},{"id2":6},{"id3":7},{"id4":8}]]