This page is optimized for mobile devices, if you would prefer the desktop version just click here

22.13 Json0230: decoding json arrays

Learn how to read a JSON string containing nested array data from a file, decode it, and display its component parts.

Revised: Thu Jun 02 19:28:45 CDT 2016

This page is included in the following Books:

Table of contents

Preface

This is a page from the book titled The json-simple Java Library . The book explains how to use the json-simple Java library to generate, transform, and query JSON text. This page explains how to read a JSON string containing nestedarray data from a file, decode it, and display its component parts.

Viewing tip

I recommend that you open another copy of this module in a separate browser window and use the following links to easily find and view the Figuresand Listings while you are reading about them.

Figures

  • Figure 1 . Screen shot of raw JSON string.
  • Figure 2 . Display first player's name.
  • Figure 3 . The first player's cards.
  • Figure 4 . Information about the second player.

Listings

  • Listing 1 . Read the file containing the JSON string.
  • Listing 2 . Display the JSON string.
  • Listing 3 . Access the game array.
  • Listing 4 . Get information about the first player.
  • Listing 5 . Display first player's cards.
  • Listing 6 . Get and display information about the second player.
  • Listing 7 . The program named Code.java.

General background information

You learned how to encode JSON data containing nested arrays and how to write the encoded JSON string to an output file in the page titled Json0225: Encoding JSON Arrays . The program that I will discuss and explain in the next section will read thatfile from the disk, decode it, and display its component parts.

Discussion and sample code

The program named Code (see Listing 7 ) reads and parses aninput file named junk.json , The file contains a JSON string with nested array data.

Read the file containing the JSON string

I will discuss and explain this program in fragments. The first fragment is shown in Listing 1 .

Listing 1 . Read the file containing the JSON string. class Code{ public static void main(String[]args){ //Instantiate a JSONObject object, which is a subclass of the// Java HashMap class. JSONObject jsonMap = null;try{ //Read json string from a file and parse it into a HashMap.jsonMap = (JSONObject)(JSONValue.parse(new FileReader("junk.json")));}catch(IOException ex){ ex.printStackTrace();}//end catch

The code in Listing 1 shows the beginning of the class and the beginning of the main method. This code reads the JSON string from the input file named junk.json and parses the data into an object of type JSONObject .

There is nothing new in Listing 1 so the code shouldn't need further explanation. When the code in Listing 1 has finished executing, all of the information from the JSON string in the file is encapsulated in the object oftype JSONObject referred to as jsonMap .

<< Chapter < Page Page > Chapter >>

Read also:

OpenStax, Object-oriented programming (oop) with java. OpenStax CNX. Jun 29, 2016 Download for free at https://legacy.cnx.org/content/col11441/1.201
Google Play and the Google Play logo are trademarks of Google Inc.
Jobilize.com uses cookies to ensure that you get the best experience. By continuing to use Jobilize.com web-site, you agree to the Terms of Use and Privacy Policy.