JSON: Difference between revisions
Content added Content deleted
m (→{{header|Perl 6}}: more explicit link) |
|||
Line 652: | Line 652: | ||
SysLib.writeStdout(result.results[1].geometry.location.lng); |
SysLib.writeStdout(result.results[1].geometry.location.lng); |
||
end</lang> |
end</lang> |
||
=={{header|Erlang}}== |
|||
Use the JSON library for Erlang (mochijson) from [https://github.com/mochi/mochiweb/blob/master/src/mochijson.erl mochiweb]. The JSON code is extracted from [http://en.wikipedia.org/wiki/JSON#JSON_example wikipedia] |
|||
<lang Erlang> |
|||
-module(json). |
|||
-export([main/0]). |
|||
main() -> |
|||
JSON = |
|||
"{ |
|||
\"firstName\": \"John\", |
|||
\"lastName\": \"Smith\", |
|||
\"age\": 25, |
|||
\"address\": { |
|||
\"streetAddress\": \"21 2nd Street\", |
|||
\"city\": \"New York\", |
|||
\"state\": \"NY\", |
|||
\"postalCode\": \"10021\" |
|||
}, |
|||
\"phoneNumber\": [ |
|||
{ |
|||
\"type\": \"home\", |
|||
\"number\": \"212 555-1234\" |
|||
}, |
|||
{ |
|||
\"type\": \"fax\", |
|||
\"number\": \"646 555-4567\" |
|||
} |
|||
] |
|||
}", |
|||
Erlang = |
|||
{struct, |
|||
[{"firstName","John"}, |
|||
{"lastName","Smith"}, |
|||
{"age",25}, |
|||
{"address", |
|||
{struct,[{"streetAddress","21 2nd Street"}, |
|||
{"city","New York"}, |
|||
{"state","NY"}, |
|||
{"postalCode","10021"}]}}, |
|||
{"phoneNumber", |
|||
{array,[{struct,[{"type","home"},{"number","212 555-1234"}]}, |
|||
{struct,[{"type","fax"},{"number","646 555-4567"}]}]}}]}, |
|||
io:format("JSON -> Erlang\n~p\n",[mochijson:decode(JSON)]), |
|||
io:format("Erlang -> JSON\n~s\n",[mochijson:encode(Erlang)]). |
|||
</lang> |
|||
Output: |
|||
<pre>JSON -> Erlang |
|||
{struct,[{"firstName","John"}, |
|||
{"lastName","Smith"}, |
|||
{"age",25}, |
|||
{"address", |
|||
{struct,[{"streetAddress","21 2nd Street"}, |
|||
{"city","New York"}, |
|||
{"state","NY"}, |
|||
{"postalCode","10021"}]}}, |
|||
{"phoneNumber", |
|||
{array,[{struct,[{"type","home"},{"number","212 555-1234"}]}, |
|||
{struct,[{"type","fax"},{"number","646 555-4567"}]}]}}]} |
|||
Erlang -> JSON |
|||
{"firstName":"John","lastName":"Smith","age":25,"address":{"streetAddress":"21 2nd Street","city":"New York","state":"NY","postalCode":"10021"},"phoneNumber":[{"type":"home","number":"212 555-1234"},{"type":"fax","number":"646 555-4567"}]}</pre> |
|||
=={{header|Factor}}== |
=={{header|Factor}}== |