先看个例子吧: Word = unicode:characters_to_binary( "大海" ), Doc2 = [{name, Word}, {age, 33}, {phones, [3332211, 4443322, Word]}], A2 = jsonx:encode( Doc2 ), %<<{"name":"大海","age":33,"phones":[3332211,4443322,"大海"]}>> A3 = jsx:encode( Doc2 ), %<<{"name":"大海","age":33,"phones":[3332211,4443322,"大海"]}>> L = {struct, Doc2}, A11 = iolist_to_binary(mochijson2:encode( L )), %<<{"name":"\u5927\u6d77","age":33,"phones":[3332211,4443322,"\u5927\u6d77"]}>> Doc = {[{foo, [<<"bing">>, 2.3, true]}]}, A4 = jiffy:encode( Doc2 ), % 运行后崩溃了,如果是Doc,可以正确运行 AEnc = {obj, Doc2}, A5 = rfc4627:encode( AEnc ), %{"name":"大海","age":33,"phones":[3332211,4443322,"大海"]}Json2 = jsonx:encode(Map。。), 不能解析。。。 Json3 = jiffy:encode(Map。。), 结果正确看看这个最简单人例子的结果吧,Json3 = jsx:encode(Map。。), 结果正确
jiffy 排名第一的,解析出错。mochijson2 结果不正确,english是可以的,中文就出问题了。 rfc4627 后边是乱码 jsonx 对map 数据不能正确解析 只有jsx 库是正确的结果, jsonx 还可以解析record,也还可以。
erlang json: jsx,rfc4627,mochijson2,jsonx 简单比较
最新推荐文章于 2024-06-24 09:37:17 发布