Json
Introduction
What
is JSON?
- JSON stands for JavaScript Object Notation
- JSON is lightweight text-data interchange format
- JSON is language independent *
- JSON is "self-describing" and easy to understand
JSON uses JavaScript syntax for
describing data objects, but JSON is still language and platform independent.
JSON parsers and JSON libraries exists for many different programming
languages.
|
Json
Format Example :
{
"employees": [
{
"firstName":
"John",
"lastName":
"Doe"
},
{
"firstName":
"Anna",
"lastName":
"Smith"
}
]
}
Why
JSON?
For AJAX applications, JSON is
faster and easier than XML:
Using XML
- Fetch an XML document
- Use the XML DOM to loop through the document
- Extract values and store in variables
Using JSON
- Fetch a JSON string
- eval() the JSON string
JSON
Values
JSON values can be:
- A number (integer or floating point)
- A string (in double quotes)
- A Boolean (true or false)
- An array (in square brackets)
- An object (in curly brackets)
- null
Json
Validator
JSON
Lint is a web based validator and reformatter for JSON, a lightweight
data-interchange format.
Json
Usage
PHP
Returns the JSON representation of
a value
|
|
Decodes a JSON string
|
Example
$json
=
'{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json,
true));
Output:
array(5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}
PERL
Library
Require : $tar xvfz JSON-2.53.tar.gz
encode_json()
|
converts the given Perl data
structure to a UTF-8 encoded, binary string
|
||
decode_json()
|
used for decoding JSON in Per
|
Example
#!/usr/bin/perl
use
JSON;
use
Data::Dumper;
$json
=
'{"a":1,"b":2,"c":3,"d":4,"e":5}';
$text
= decode_json($json);
print Dumper($text);
Output
$VAR1
= {
'e' => 5,
'c' => 3,
'a' => 1,
'b' => 2,
'd' => 4
};
JAVA
Library
Required : JSON.simple
Encoding
in JAVA
import
org.json.simple.JSONObject;
class
JsonEncodeDemo
{
public static void main(String[] args)
{
JSONObject obj = new JSONObject();
obj.put("name",
"foo");
obj.put("num", new
Integer(100));
obj.put("balance", new
Double(1000.21));
obj.put("is_vip", new
Boolean(true));
System.out.print(obj);
}
}
While compile and executing above
program, this will produce following result:
{"balance": 1000.21,
"num":100, "is_vip":true,
"name":"foo"}
Decoding
Json in JAVA
import
org.json.simple.JSONObject;
import
org.json.simple.JSONArray;
import
org.json.simple.parser.ParseException;
import
org.json.simple.parser.JSONParser;
class
JsonDecodeDemo
{
public static void main(String[] args)
{
JSONParser parser=new JSONParser();
String s =
"[0,{\"1\":{\"2\":{\"3\":{\"4\":[5,{\"6\":7}]}}}}]";
try{
Object obj = parser.parse(s);
JSONArray array = (JSONArray)obj;
System.out.println("The 2nd
element of array");
System.out.println(array.get(1));
System.out.println();
JSONObject obj2 =
(JSONObject)array.get(1);
System.out.println("Field
\"1\"");
System.out.println(obj2.get("1"));
s = "{}";
obj = parser.parse(s);
System.out.println(obj);
s= "[5,]";
obj = parser.parse(s);
System.out.println(obj);
s= "[5,,2]";
obj = parser.parse(s);
System.out.println(obj);
}catch(ParseException pe){
System.out.println("position:
" + pe.getPosition());
System.out.println(pe);
}
}
}
While compile and executing above
program, this will produce following result:
The
2nd element of array
{"1":{"2":{"3":{"4":[5,{"6":7}]}}}}
Field
"1"
{"2":{"3":{"4":[5,{"6":7}]}}}
{}
[5]
[5,2]
JAVASCRIPT
No library required
Example
var jsonObj = JSON.parse(json_string);
var name = jsonObj.name;
var country = jsonObj.country;
Comments
Post a Comment