如何在不检测可打印字符代码列表的情况下格式化Erlang术语?例如。而不是
1> io:format("foo=~p~n", [[50]]).
foo="2"
我想获得foo=[50]
。
答案 0 :(得分:4)
如果使用“~w”而不是“~p”,它应该给你列表而不将其改成字符串:
io:format("foo=~w~n", [[50]]).
在这里查看文件:
http://erldocs.com/R14B/stdlib/io.html?i=3&search=io:#format/1
答案 1 :(得分:4)
As of R16B,您可以使用l
(小写字母)修饰符来~p
格式指令禁用字符串检测:
1> io:format("~p~n", [[10]]).
"\n"
ok
2> io:format("~lp~n", [[10]]).
[10]
ok
这意味着您仍然可以获得~p
提供的换行符和深度限制,而不是~w
。
答案 2 :(得分:1)
在~w
中使用标记io:format
。
1> io:format("foo=~w~n", [[50]]).
foo=[50]