- org.json - Discussion
- org.json - Useful Resources
- org.json - Quick Guide
- org.json - JSONException Handling
- org.json - XML
- org.json - Property
- org.json - JSONStringer
- org.json - JSONObject
- org.json - JSONML
- org.json - JSONArray
- org.json - HTTP
- org.json - CookieList
- org.json - Cookie
- org.json - CDL
- org.json - Environment Setup
- org.json - Overview
- org.json - Home
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Org.Json - Quick Guide
org.json - Overview
org.json or JSON-Java is a simple Java based toolkit for JSON. You can use org.json to encode or decode JSON data.
Features
Specification Comppant − JSON.simple is fully comppant with JSON Specification - RFC4627.
Lightweight − It have very few classes and provides the necessary functionapties pke encode/decode and escaping json.
XML Conversion − It provides conversion capabipty from JSON to XML and vice-versa.
HTTP Headers − Supports HTTP Header conversion to JSON and vice versa.
Cookie − Provides support for Cookie conversion to JSON and vice versa.
CDL − Provides support to convert comma separated pst to JSON and vice versa.
No dependency − No external pbrary dependency. Can be independently included.
Java 1.6-1.11 compatible − Source code and the binary are Java 1.6-1.11 compatible
org.json - Environment Setup
This chapter takes you through the process of setting up Org.Json on Windows and Linux based systems. Org.Json can be easily installed and integrated with your current Java environment following a few simple steps without any complex setup procedures. User administration is required while installation.
System Requirements
JDK | Java SE 2 JDK 1.5 or above |
---|---|
Memory | 1 GB RAM (recommended) |
Disk Space | No minimum requirement |
Operating System Version | Windows XP or above, Linux |
Let us now proceed with the steps to install Org.Json.
Step 1: Verify your Java Installation
First of all, you need to have Java Software Development Kit (SDK) installed on your system. To verify this, execute any of the two commands depending on the platform you are working on.
If the Java installation has been done properly, then it will display the current version and specification of your Java installation. A sample output is given in the following table.
Platform | Command | Sample Output |
---|---|---|
Windows | Open command console and type − >java –version |
java version "11.0.11" 2021-04-20 LTS Java(TM) SE Runtime Environment 18.9 (build 11.0.11+9-LTS-194) Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.11+9-LTS-194, mixed mode) |
Linux | Open command terminal and type − $java –version |
java version "11.0.11" 2021-04-20 LTS Open JDK Runtime Environment 18.9 (build 11.0.11+9-LTS-194) Open JDK 64-Bit Server VM (build 11.0.11+9-LTS-194, mixed mode) |
We assume the readers of this tutorial have Java SDK version 11.0.11 installed on their system.
In case you do not have Java SDK, download its current version from
and have it installed.Step 2: Set your Java Environment
Set the environment variable JAVA_HOME to point to the base directory location where Java is installed on your machine. For example,
Sr.No. | Platform & Description |
---|---|
1 | Windows Set JAVA_HOME to C:ProgramFilesjavajdk11.0.11 |
2 | Linux Export JAVA_HOME = /usr/local/java-current |
Append the full path of Java compiler location to the System Path.
Sr.No. | Platform & Description |
---|---|
1 | Windows Append the String "C:Program FilesJavajdk11.0.11in" to the end of the system variable PATH. |
2 | Linux Export PATH = $PATH:$JAVA_HOME/bin/ |
Execute the command java -version from the command prompt as explained above.
Step 3: Install Org.Json Library
Download the latest version of org.json jar file from
. At the time of writing this tutorial, we have downloaded json-20211205, and copied it into C:>JSON folder.OS | Archive name |
---|---|
Windows | json-20180813.jar |
Linux | json-20180813.jar |
Mac | json-20180813.jar |
Step 4: Set JSON_JAVA Environment
Set the JSON_JAVA environment variable to point to the base directory location where org.json jar is stored on your machine. Let s assuming we ve stored json-20211205.jar in the JSON folder.
Sr.No | OS & Description |
---|---|
1 | Windows Set the environment variable JSON_JAVA to C:JSON |
2 | Linux export JSON_JAVA = /usr/local/JSON |
3 | Mac export JSON_JAVA = /Library/JSON |
Step 5: Set CLASSPATH Variable
Set the CLASSPATH environment variable to point to the JSON.simple jar location.
Sr.No | OS & Description |
---|---|
1 | Windows Set the environment variable CLASSPATH to %CLASSPATH%;%JSON_JAVA%json-20211205.jar;.; |
2 | Linux export CLASSPATH = $CLASSPATH:$JSON_JAVA/json-20211205.jar:. |
3 | Mac export CLASSPATH = $CLASSPATH:$JSON_JAVA/json-20211205.jar:. |
org.json - CDL
CDL class provides static methods to convert a comma depmited text into a JSONArray, and vice versa.
Following methods are covered in the example.
rowToJSONArray(String) − Converts a comma depmited text to JSONArray Object.
rowToString(JSONArray) − Converts a JSONArray to comma depmited text.
toJSONArray(String) − Converts a multi-pne comma depmited text to Object of JSONArray objects.
toJSONArray(JSONArray, String) − Converts a JSONArray Object and comma depmited text to JSONArray Object.
Example
import org.json.CDL; import org.json.JSONArray; import org.json.JSONTokener; pubpc class JSONDemo { pubpc static void main(String[] args) { String csvData = "INDIA, UK, USA"; //Case 1: CSV to JSON Array JSONArray jsonArray = CDL.rowToJSONArray(new JSONTokener(csvData)); System.out.println(jsonArray); //Case 2: JSONArray to CSV System.out.println(CDL.rowToString(jsonArray)); //Case 3: CSV to JSONArray of Objects csvData = "empId, name, age " + "1, Mark, 22 " + "2, Robert, 35 " + "3, Jupa, 18"; System.out.println(CDL.toJSONArray(csvData)); //Case 4: CSV without header jsonArray = new JSONArray(); jsonArray.put("empId"); jsonArray.put("name"); jsonArray.put("age"); csvData = "1, Mark, 22 " + "2, Robert, 35 " + "3, Jupa, 18"; System.out.println(CDL.toJSONArray(jsonArray,csvData)); } }
Output
["INDIA","UK","USA"] INDIA,UK,USA [{"name":"Mark","empId":"1","age":"22"}, {"name":"Robert","empId":"2","age":"35"}, {"name":"Jupa","empId":"3","age":"18"}] [{"name":"Mark","empId":"1","age":"22"}, {"name":"Robert","empId":"2","age":"35"}, {"name":"Jupa","empId":"3","age":"18"}]
org.json - Cookie
Cookie class provides static methods to convert web browser s cookie text into a JSONObject, and vice versa.
Following methods are covered in the example.
toJSONObject(String) − Converts a cookie text to JSONObject Object.
toString(JSONObject) − Converts a JSONObject to cookie text.
Example
import org.json.Cookie; import org.json.JSONObject; pubpc class JSONDemo { pubpc static void main(String[] args) { String cookie = "username = Mark Den; expires = Thu, 15 Jun 2020 12:00:00 UTC; path = /"; //Case 1: Converts Cookie String to JSONObject JSONObject jsonObject = Cookie.toJSONObject(cookie); System.out.println(jsonObject); //Case 2: Converts JSONObject to Cookie String System.out.println(Cookie.toString(jsonObject)); } }
Output
{"path":"/","expires":"Thu, 15 Jun 2020 12:00:00 UTC","name":"username","value":"Mark Den"} username=Mark Den;expires=Thu, 15 Jun 2020 12:00:00 UTC;path=/
org.json - CookieList
CookieList class provides static methods to convert Cookie List to JSONObject, and vice versa. Cookie List is a sequence of name/value pairs.
Following methods are covered in the example.
toJSONObject(String) − Converts a cookie pst text to JSONObject Object.
toString(JSONObject) − Converts a JSONObject to cookie pst text.
Example
import org.json.Cookie; import org.json.CookieList; import org.json.JSONObject; pubpc class JSONDemo { pubpc static void main(String[] args) { String cookie = "username = Mark Den; expires = Thu, 15 Jun 2020 12:00:00 UTC; path = /"; //Case 1: Converts Cookie String to JSONObject JSONObject cookieJSONObject = Cookie.toJSONObject(cookie); JSONObject cookiepstJSONObject = new JSONObject(); cookiepstJSONObject.put(cookieJSONObject.getString("name"), cookieJSONObject.getString("value")); String cookieList = CookieList.toString(cookiepstJSONObject); System.out.println(cookieList); System.out.println(CookieList.toJSONObject(cookieList)); } }
Output
username=Mark Den {"username":"Mark Den"}
org.json - HTTP
HTTP class provides static methods to convert web browser s header text into a JSONObject, and vice versa.
Following methods are covered in the example.
toJSONObject(String) − Converts a header text to JSONObject Object.
toString(JSONObject) − Converts a JSONObject to header text.
Example
import org.json.HTTP; import org.json.JSONObject; pubpc class JSONDemo { pubpc static void main(String[] args) { JSONObject jsonObject = new JSONObject(); jsonObject.put("Method", "POST"); jsonObject.put("Request-URI", "http://www.tutorialspoint.com/"); jsonObject.put("HTTP-Version", "HTTP/1.1"); //Case 1: Converts JSONObject of Header to String String headerText = HTTP.toString(jsonObject); System.out.println(headerText); headerText = "POST "http://www.tutorialspoint.com/" HTTP/1.1"; //Case 2: Converts Header String to JSONObject System.out.println(HTTP.toJSONObject(headerText)); } }
Output
POST "http://www.tutorialspoint.com/" HTTP/1.1 {"Request-URI":"http://www.tutorialspoint.com/","Method":"POST","HTTP-Version":"HTTP/1.1"}
org.json - JSONArray
A JSONArray is an ordered sequence of values. It provides methods to access values by index and to put values. Following types are supported −
Boolean
JSONArray
JSONObject
Number
String
JSONObject.NULL object
Example
import org.json.JSONArray; import org.json.JSONObject; pubpc class JSONDemo { pubpc static void main(String[] args) { JSONArray pst = new JSONArray(); pst.put("foo"); pst.put(new Integer(100)); pst.put(new Double(1000.21)); pst.put(new Boolean(true)); pst.put(JSONObject.NULL); System.out.println("JSONArray: "); System.out.println(pst); } }
Output
JSONArray: ["foo",100,1000.21,true,null]
org.json - JSONML
JSONML class provides static methods to convert a XML text into a JSONArray, and vice versa.
Following methods are covered in the example.
toJSONArray(String) − Converts a XML to JSONArray Object.
toJSONObject(String) − Converts a XML to JSONObject Object.
toString(JSONArray) − Gives a XML from a JSONArray Object.
toString(JSONObject) − Gives a XML from a JSONObject Object.
Example
import org.json.JSONArray; import org.json.JSONML; import org.json.JSONObject; pubpc class JSONDemo { pubpc static void main(String[] args) { JSONArray pst = new JSONArray(); pst.put("name"); pst.put("Robert"); System.out.println("XML from a JSONArray: "); String xml = JSONML.toString(pst); System.out.println(xml); System.out.println("JSONArray from a XML: "); pst = JSONML.toJSONArray(xml); System.out.println(pst); System.out.println("JSONObject from a XML: "); JSONObject object = JSONML.toJSONObject(xml); System.out.println(object); System.out.println("XML from a JSONObject: "); xml = JSONML.toString(object); System.out.println(xml); } }
Output
XML from a JSONArray: <name>Robert</name> JSONArray from a XML: ["name","Robert"] JSONObject from a XML: {"childNodes":["Robert"],"tagName":"name"} XML from a JSONObject: <name>Robert</name>
org.json - JSONObject
JSONObject class is a unordered collection of key-value pairs. It provides methods to access values by key and to put values. Following types are supported −
Boolean
JSONArray
JSONObject
Number
String
JSONObject.NULL object
Example
import org.json.JSONArray; import org.json.JSONObject; pubpc class JSONDemo { pubpc static void main(String[] args) { JSONObject jsonObject = new JSONObject(); jsonObject.put("Name", "Robert"); jsonObject.put("ID", 1); jsonObject.put("Fees", new Double(1000.21)); jsonObject.put("Active", new Boolean(true)); jsonObject.put("Other Details", JSONObject.NULL); JSONArray pst = new JSONArray(); pst.put("foo"); pst.put(new Integer(100)); jsonObject.put("pst",pst); System.out.println(jsonObject); } }
Output
{"Active":true,"Other Details":null,"ID":1,"Fees":1000.21,"pst":["foo",100],"Name":"Robert"}
org.json - JSONStringer
JSONStringer is a utipty class to build a JSON Text quickly which confirms to JSON Syntax rules. Each instance of JSONStringer can produce one JSON text.
Example
import org.json.JSONStringer; pubpc class JSONDemo { pubpc static void main(String[] args) { String jsonText = new JSONStringer() .object() .key("Name") .value("Robert") .endObject() .toString(); System.out.println(jsonText); jsonText = new JSONStringer() .array() .value("Robert") .value("Jupa") .value("Dan") .endArray() .toString(); System.out.println(jsonText); jsonText = new JSONStringer() .array() .value("Robert") .value("Jupa") .value("Dan") .object() .key("Name") .value("Robert") .endObject() .endArray() .toString(); System.out.println(jsonText); } }
Output
{"Name":"Robert"} ["Robert","Jupa","Dan"] ["Robert","Jupa","Dan",{"Name":"Robert"}]
org.json - Property
Property class provides static methods to convert properties text into a JSONObject, and vice versa.
Following methods are covered in the example.
toJSONObject(Properties) − Converts a properties data to JSONObject Object.
toProperties(JSONObject) − Converts a JSONObject to properties object.
Example
import java.util.Properties; import org.json.JSONObject; import org.json.Property; pubpc class JSONDemo { pubpc static void main(String[] args) { Properties properties = new Properties(); properties.put("title", "This is a title text"); properties.put("subtitle", "This is a subtitle text"); System.out.println("Properties to JSON"); JSONObject jsonObject = Property.toJSONObject(properties); System.out.println(jsonObject); System.out.println("JSON to properties"); System.out.println(Property.toProperties(jsonObject)); } }
Output
Properties to JSON {"subtitle":"This is a subtitle text","title":"This is a title text"} JSON to properties {subtitle = This is a subtitle text, title = This is a title text}
org.json - XML
XML class provides static methods to convert a XML text into a JSONObject, and vice versa.
Following methods are covered in the example.
toJSONObject(String) − Converts a XML to JSONArray Object.
toString(JSONObject) − Gives a XML from a JSONObject Object.
Example
import org.json.JSONObject; import org.json.XML; pubpc class JSONDemo { pubpc static void main(String[] args) { JSONObject jsonObject = new JSONObject(); jsonObject.put("Name", "Robert"); jsonObject.put("ID", 1); jsonObject.put("Fees", new Double(1000.21)); jsonObject.put("Active", new Boolean(true)); jsonObject.put("Details", JSONObject.NULL); //Convert a JSONObject to XML String xmlText = XML.toString(jsonObject); //Convert an XML to JSONObject System.out.println(XML.toJSONObject(xmlText)); } }
Output
<Active>true</Active><Details>null</Details><ID>1</ID><Fees>1000.21</Fees><Name>Robert</Name> {"Active":true,"Details":null,"ID":1,"Fees":1000.21,"Name":"Robert"}
org.json - JSONException Handpng
Utipty classes of org.json throws JSONException in case of invapd JSON. Following example shows how to handle JSONException.
Example
import org.json.JSONException; import org.json.XML; pubpc class JSONDemo { pubpc static void main(String[] args) { try{ //XML tag name should not have space. String xmlText = "<Other Details>null</Other Details>"; System.out.println(xmlText); //Convert an XML to JSONObject System.out.println(XML.toJSONObject(xmlText)); } catch(JSONException e){ System.out.println(e.getMessage()); } } }
Output
<Other Details>null</Other Details> Misshaped close tag at 34 [character 35 pne 1]Advertisements