org.apache.sling.commons.json.util
Class CDL

java.lang.Object
  extended by org.apache.sling.commons.json.util.CDL

public class CDL
extends Object

This provides static methods to convert comma delimited text into a JSONArray, and to covert a JSONArray into comma delimited text. Comma delimited text is a very popular format for data interchange. It is understood by most database, spreadsheet, and organizer programs.

Each row of text represents a row in a table or a data record. Each row ends with a NEWLINE character. Each row contains one or more values. Values are separated by commas. A value can contain any character except for comma, unless is is wrapped in single quotes or double quotes.

The first row usually contains the names of the columns.

A comma delimited list can be converted into a JSONArray of JSONObjects. The names for the elements in the JSONObjects can be taken from the names in the first row.

Version:
2
Author:
JSON.org

Constructor Summary
CDL()
           
 
Method Summary
static JSONArray rowToJSONArray(JSONTokener x)
          Produce a JSONArray of strings from a row of comma delimited values.
static JSONObject rowToJSONObject(JSONArray names, JSONTokener x)
          Produce a JSONObject from a row of comma delimited text, using a parallel JSONArray of strings to provides the names of the elements.
static String rowToString(JSONArray ja)
          Produce a comma delimited text row from a JSONArray.
static JSONArray toJSONArray(JSONArray names, JSONTokener x)
          Produce a JSONArray of JSONObjects from a comma delimited text string using a supplied JSONArray as the source of element names.
static JSONArray toJSONArray(JSONArray names, String string)
          Produce a JSONArray of JSONObjects from a comma delimited text string using a supplied JSONArray as the source of element names.
static JSONArray toJSONArray(JSONTokener x)
          Produce a JSONArray of JSONObjects from a comma delimited text string, using the first row as a source of names.
static JSONArray toJSONArray(String string)
          Produce a JSONArray of JSONObjects from a comma delimited text string, using the first row as a source of names.
static String toString(JSONArray ja)
          Produce a comma delimited text from a JSONArray of JSONObjects.
static String toString(JSONArray names, JSONArray ja)
          Produce a comma delimited text from a JSONArray of JSONObjects using a provided list of names.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CDL

public CDL()
Method Detail

rowToJSONArray

public static JSONArray rowToJSONArray(JSONTokener x)
                                throws JSONException
Produce a JSONArray of strings from a row of comma delimited values.

Parameters:
x - A JSONTokener of the source text.
Returns:
A JSONArray of strings.
Throws:
JSONException

rowToJSONObject

public static JSONObject rowToJSONObject(JSONArray names,
                                         JSONTokener x)
                                  throws JSONException
Produce a JSONObject from a row of comma delimited text, using a parallel JSONArray of strings to provides the names of the elements.

Parameters:
names - A JSONArray of names. This is commonly obtained from the first row of a comma delimited text file using the rowToJSONArray method.
x - A JSONTokener of the source text.
Returns:
A JSONObject combining the names and values.
Throws:
JSONException

toJSONArray

public static JSONArray toJSONArray(String string)
                             throws JSONException
Produce a JSONArray of JSONObjects from a comma delimited text string, using the first row as a source of names.

Parameters:
string - The comma delimited text.
Returns:
A JSONArray of JSONObjects.
Throws:
JSONException

toJSONArray

public static JSONArray toJSONArray(JSONTokener x)
                             throws JSONException
Produce a JSONArray of JSONObjects from a comma delimited text string, using the first row as a source of names.

Parameters:
x - The JSONTokener containing the comma delimited text.
Returns:
A JSONArray of JSONObjects.
Throws:
JSONException

toJSONArray

public static JSONArray toJSONArray(JSONArray names,
                                    String string)
                             throws JSONException
Produce a JSONArray of JSONObjects from a comma delimited text string using a supplied JSONArray as the source of element names.

Parameters:
names - A JSONArray of strings.
string - The comma delimited text.
Returns:
A JSONArray of JSONObjects.
Throws:
JSONException

toJSONArray

public static JSONArray toJSONArray(JSONArray names,
                                    JSONTokener x)
                             throws JSONException
Produce a JSONArray of JSONObjects from a comma delimited text string using a supplied JSONArray as the source of element names.

Parameters:
names - A JSONArray of strings.
x - A JSONTokener of the source text.
Returns:
A JSONArray of JSONObjects.
Throws:
JSONException

rowToString

public static String rowToString(JSONArray ja)
Produce a comma delimited text row from a JSONArray. Values containing the comma character will be quoted.

Parameters:
ja - A JSONArray of strings.
Returns:
A string ending in NEWLINE.

toString

public static String toString(JSONArray ja)
                       throws JSONException
Produce a comma delimited text from a JSONArray of JSONObjects. The first row will be a list of names obtained by inspecting the first JSONObject.

Parameters:
ja - A JSONArray of JSONObjects.
Returns:
A comma delimited text.
Throws:
JSONException

toString

public static String toString(JSONArray names,
                              JSONArray ja)
                       throws JSONException
Produce a comma delimited text from a JSONArray of JSONObjects using a provided list of names. The list of names is not included in the output.

Parameters:
names - A JSONArray of strings.
ja - A JSONArray of JSONObjects.
Returns:
A comma delimited text.
Throws:
JSONException


Copyright © 2007-2011 The Apache Software Foundation. All Rights Reserved.