在Erlang中构建XMERL文档

6 xml erlang

谁能告诉我如何使用XMERL构建一个简单的XML文档?该文档仅显示如何附加到从文件中读取的当前XML文档.我想从头开始创建一个新的XML文档.

例如,我想将这样一个简单的结构写到XML文件中:

Data = {myNode,[{foo,"Foo"},{bar,"Bar"}]}.
Run Code Online (Sandbox Code Playgroud)

谢谢!

leg*_*cia 8

xmerl的"简单"格式与您的类似:(注意第三个值,子元素列表)

Data = {myNode,[{foo,"Foo"},{bar,"Bar"}], []}.
Run Code Online (Sandbox Code Playgroud)

这可以"导出"到XML中以用作字符串:

> lists:flatten(xmerl:export_simple([Data], xmerl_xml)).
"<?xml version=\"1.0\"?><myNode foo=\"Foo\" bar=\"Bar\"/>"
Run Code Online (Sandbox Code Playgroud)

或写入文件:

> file:write_file("/tmp/foo.xml", xmerl:export_simple([Data2], xmerl_xml)).
ok
Run Code Online (Sandbox Code Playgroud)

请注意,export_simple采用元素列表,而不是单个根元素.此外,根据您对结果的处理方式,可能不需要展平.