[Erlang]如何在Erlang中将对list进行json编码?

Json编码,在python里就是一句话:

json.dumps(user_data)

但是Erlang没有自带的Json模块,只能自己造轮子:

先下载mochijson2:

https://github.com/mochi/mochiweb/blob/master/src/mochijson2.erl

用erlc编译

然后,上代码:

get_json_data() ->
		UserData = [{"product_name", "Programming Erlang"},{"order_type", "97"},{"money","100"}],
		DataConverted = [{X,list_to_binary(Y)} || {X,Y} <- UserData],%%convert value to binary
		O1 = mochijson2:encode(DataConverted),
		O2 = iolist_to_binary(O1),
		binary_to_list(O2).%%format to string

注意:

1. encode之前,需要将value转为binary编码

2. encode之后的数据是io_list, 要先转为binary,再转为list才能作为字符串使用

[Erlang]如何在Erlang中将对list进行json编码?

时间: 2024-10-11 15:51:19

[Erlang]如何在Erlang中将对list进行json编码?的相关文章

[Erlang]如何在Erlang中使用SSL

原创文章,转载请注明出处:服务器非业余研究http://blog.csdn.net/erlib 作者Sunface 最近准备写一个SSL服务器,结果发现网上相关的资料很少,因为特地在此给大家分享一下SSL的基本使用方法. SSL在使用上跟Tcp很像,但是也由区别.首先需要一个SSL证书,可以在参考这篇文章创建. 下面的代码实现了服务端和客户端,对于有经验erlang同学,应该很容易理解了,就不赘述了. 服务器端 -module(s). -export([start/0, client/1, ac

Erlang基础 -- 介绍 -- Erlang特点

前言 Erlang是具有多重范型的编程语言,具有很多特点,主要的特点有以下几个: 函数式 并发性 分布式 健壮性 软实时 热更新 递增式代码加载 动态类型 解释型 函数式 Erlang是函数式编程语言,函数式是一种编程模型,将计算机中的运算看做是数学中的函数计算,可以避免状态以及变量的概念. 对象是面向对象的第一型,函数式编程语言也是一样,函数是函数式编程的第一型.函数是Erlang编程语言的基本单位,在Erlang里,函数是第一型,函数几乎会被用作一切,包括最简单的计算.所有的概念都是由函数表

Archive for the ‘Erlang’ Category 《Erlang编程指南》读后感

http://timyang.net/category/erlang/ 在云时代,我们需要有更好的能利用多核功能及分布式能力的编程语言,Erlang在这方面具有天生的优势,因此我们始终对它保持强烈关注. 按:此为客座文章,投稿人为新浪微博基础研发工程师赵鹏城(http://weibo.com/iamzpc),以下为原文.在对一个分布式KV存储系统的研究过程中,我有幸遇到了Erlang语言.因此,我研究工作的第一目标就是快速入门Erlang语言并在实际研究过程中进一步深入理解Erlang的精髓.在

js中将字符串转换成json的方式

1.eval 方式解析,实际中用的还是比较少 function evalJson(str){ var json = eval('(' + str + ')'); return json; } 2.使用js 的全局对象 JSON 对象 function isJson(str){ return JSON.parse(str); } 3.还有就是jq中 使用的 $.pareJSON $.parseJSON(str); 4.看jq源码和一些人的写法了解一种new Function function ne

[Erlang]通用的erlang优化设置

设置是我在多个项目中通用的,不过根据应用场景的不同,还会有其它细调,就不在这一一说明了.  - Sunface  一. erl启动时参数: +K true 开启epoll调度,在linux中开启epoll,会大大增加调度的效率 +A 100 异步线程池,为某些port调用服务 +P 1024000 最大进程数 +Q 65535 最大port数 +sbt db 绑定调度器,绑定后调度器的任务队列不会在各个CPU线程之间跃迁,结合sub使用,可以让CPU负载均衡的同时也避免了大量的跃迁发生. 注意:

[Erlang]怎样在Erlang中使用SSL

原创文章,转载请注明出处:server非业余研究http://blog.csdn.net/erlib 作者Sunface 近期准备写一个SSLserver,结果发现网上相关的资料非常少,由于特地在此给大家分享一下SSL的基本用法. SSL在使用上跟Tcp非常像,可是也由差别. 首先须要一个SSL证书.能够在參考这篇文章创建. 以下的代码实现了服务端和客户端.对于有经验erlang同学,应该非常easy理解了,就不赘述了. server端 -module(s). -export([start/0,

[Erlang 0057] Erlang 排错利器: Erlang Crash Dump Viewer

http://www.cnblogs.com/me-sa/archive/2012/04/28/2475556.html Erlang Crash Dump Viewer真的是排错的天兵神器,还记得我们之前曾经讨论过[Erlang 0013]抓取Erlang进程运行时信息 [Erlang 0012]Erlang Process input queue ,下面是我梳理的"How to interpret the Erlang crash dumps"的文档; 很多人在问有什么工具可以打开

[erlang]优秀的erlang外部库

1.Ranch 是一个非常优秀的tcp处理的程序框架.Cowboy的底层就是用ranch来实现的,https://github.com/extend/ranch 2.Cowboy是一个超高性能超稳定的http-server.https://github.com/ninenines/cowboy 3.erlang.mk超级好用的erlang构建和测试工具https://github.com/ninenines/erlang.mk

如何在starUML中将类图转化为java代码

1.综述 StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具.这是一个用Java语言描述的创建类图的简明手册. StarUML(简称SU),是一种创建UML类图,并能够自动生成Java的"stub code" 的工具.SU也可以做JAVA逆向工程,以产生相应的UML图表. 在本教程中,我们将使用SU设计一个pizza饼.执行下列步骤,可以创建如下面所示的UML图.SU可以生成反映类结构的代码,而不是任何对象的具体行动.因此,在使用SU创建图表后,你会为此stub