|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.json.JSONObject
public class JSONObject
A JSONObject is an unordered collection of name/value pairs. Its external form is a string wrapped in curly braces with colons between the names and values, and commas between the values and names. The internal form is an object having get() and opt() methods for accessing the values by name, and put() methods for adding or replacing values by name. The values can be any of these types: Boolean, JSONArray, JSONObject, Number, String, or the JSONObject.NULL object.
The constructor can convert an external form string into an internal form Java object. The toString() method creates an external form string.
A get() method returns a value if one can be found, and throws an exception if one cannot be found. An opt() method returns a default value instead of throwing an exception, and so is useful for obtaining optional values.
The generic get() and opt() methods return an object, which you can cast or query for type. There are also typed get() and opt() methods that do type checking and type coersion for you.
The texts produced by the toString() methods are very strict. The constructors are more forgiving in the texts they will accept:
,
(comma) may appear just
before the closing brace.'
(single quote).{ } [ ] / \ : , = ; #
and if they do not look like numbers and
if they are not the reserved words true
, false
,
or null
.=
or =>
as well as
by :
;
as well as by ,
0-
(octal) or
0x-
(hex) prefix.#
Field Summary | |
---|---|
static java.lang.Object |
NULL
It is sometimes more convenient and less ambiguous to have a NULL object than to use Java's null value. |
Constructor Summary | |
---|---|
JSONObject()
Construct an empty JSONObject. |
|
JSONObject(JSONTokener x)
Construct a JSONObject from a JSONTokener. |
|
JSONObject(java.util.Map map)
Construct a JSONObject from a Map. |
|
JSONObject(java.lang.String string)
Construct a JSONObject from a string. |
Method Summary | |
---|---|
JSONObject |
accumulate(java.lang.String key,
java.lang.Object value)
Accumulate values under a key. |
java.lang.Object |
get(java.lang.String key)
Get the value object associated with a key. |
boolean |
getBoolean(java.lang.String key)
Get the boolean value associated with a key. |
double |
getDouble(java.lang.String key)
Get the double value associated with a key. |
int |
getInt(java.lang.String key)
Get the int value associated with a key. |
JSONArray |
getJSONArray(java.lang.String key)
Get the JSONArray value associated with a key. |
JSONObject |
getJSONObject(java.lang.String key)
Get the JSONObject value associated with a key. |
java.lang.String |
getString(java.lang.String key)
Get the string associated with a key. |
boolean |
has(java.lang.String key)
Determine if the JSONObject contains a specific key. |
boolean |
isNull(java.lang.String key)
Determine if the value associated with the key is null or if there is no value. |
java.util.Iterator |
keys()
Get an enumeration of the keys of the JSONObject. |
int |
length()
Get the number of keys stored in the JSONObject. |
JSONArray |
names()
Produce a JSONArray containing the names of the elements of this JSONObject. |
static java.lang.String |
numberToString(java.lang.Number n)
Produce a string from a number. |
java.lang.Object |
opt(java.lang.String key)
Get an optional value associated with a key. |
boolean |
optBoolean(java.lang.String key)
Get an optional boolean associated with a key. |
boolean |
optBoolean(java.lang.String key,
boolean defaultValue)
Get an optional boolean associated with a key. |
double |
optDouble(java.lang.String key)
Get an optional double associated with a key, or NaN if there is no such key or if its value is not a number. |
double |
optDouble(java.lang.String key,
double defaultValue)
Get an optional double associated with a key, or the defaultValue if there is no such key or if its value is not a number. |
int |
optInt(java.lang.String key)
Get an optional int value associated with a key, or zero if there is no such key or if the value is not a number. |
int |
optInt(java.lang.String key,
int defaultValue)
Get an optional int value associated with a key, or the default if there is no such key or if the value is not a number. |
JSONArray |
optJSONArray(java.lang.String key)
Get an optional JSONArray associated with a key. |
JSONObject |
optJSONObject(java.lang.String key)
Get an optional JSONObject associated with a key. |
java.lang.String |
optString(java.lang.String key)
Get an optional string associated with a key. |
java.lang.String |
optString(java.lang.String key,
java.lang.String defaultValue)
Get an optional string associated with a key. |
JSONObject |
put(java.lang.String key,
boolean value)
Put a key/boolean pair in the JSONObject. |
JSONObject |
put(java.lang.String key,
double value)
Put a key/double pair in the JSONObject. |
JSONObject |
put(java.lang.String key,
int value)
Put a key/int pair in the JSONObject. |
JSONObject |
put(java.lang.String key,
java.lang.Object value)
Put a key/value pair in the JSONObject. |
JSONObject |
putOpt(java.lang.String key,
java.lang.Object value)
Put a key/value pair in the JSONObject, but only if the value is non-null. |
static java.lang.String |
quote(java.lang.String string)
Produce a string in double quotes with backslash sequences in all the right places. |
java.lang.Object |
remove(java.lang.String key)
Remove a name and its value, if present. |
JSONArray |
toJSONArray(JSONArray names)
Produce a JSONArray containing the values of the members of this JSONObject. |
java.lang.String |
toString()
Make an JSON external form string of this JSONObject. |
java.lang.String |
toString(int indentFactor)
Make a prettyprinted JSON external form string of this JSONObject. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final java.lang.Object NULL
Constructor Detail |
---|
public JSONObject()
public JSONObject(JSONTokener x) throws java.text.ParseException
x
- A JSONTokener object containing the source string.
java.text.ParseException
- if there is a syntax error in the source string.public JSONObject(java.lang.String string) throws java.text.ParseException
string
- A string beginning with {
(left
brace) and ending with }
(right
brace).
java.text.ParseException
- The string must be properly formatted.public JSONObject(java.util.Map map)
map
- A map object that can be used to initialize the contents of
the JSONObject.Method Detail |
---|
public JSONObject accumulate(java.lang.String key, java.lang.Object value) throws java.lang.NullPointerException
key
- A key string.value
- An object to be accumulated under the key.
java.lang.NullPointerException
- if the key is nullpublic java.lang.Object get(java.lang.String key) throws java.util.NoSuchElementException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found.public boolean getBoolean(java.lang.String key) throws java.lang.ClassCastException, java.util.NoSuchElementException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found.
java.lang.ClassCastException
- if the value is not a Boolean or the String "true" or
"false".public double getDouble(java.lang.String key) throws java.util.NoSuchElementException, java.lang.NumberFormatException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found or if the value is a Number
object.
java.lang.NumberFormatException
- if the value cannot be converted to a number.public int getInt(java.lang.String key) throws java.util.NoSuchElementException, java.lang.NumberFormatException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found
java.lang.NumberFormatException
- if the value cannot be converted to a number.public JSONArray getJSONArray(java.lang.String key) throws java.util.NoSuchElementException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found or if the value is not a
JSONArray.public JSONObject getJSONObject(java.lang.String key) throws java.util.NoSuchElementException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found or if the value is not a
JSONObject.public java.lang.String getString(java.lang.String key) throws java.util.NoSuchElementException
key
- A key string.
java.util.NoSuchElementException
- if the key is not found.public boolean has(java.lang.String key)
key
- A key string.
public boolean isNull(java.lang.String key)
key
- A key string.
public java.util.Iterator keys()
public int length()
public JSONArray names()
public static java.lang.String numberToString(java.lang.Number n) throws java.lang.ArithmeticException
n
- A Number
java.lang.ArithmeticException
- JSON can only serialize finite numbers.public java.lang.Object opt(java.lang.String key) throws java.lang.NullPointerException
key
- A key string.
java.lang.NullPointerException
- The key must not be null.public boolean optBoolean(java.lang.String key)
key
- A key string.
public boolean optBoolean(java.lang.String key, boolean defaultValue)
key
- A key string.defaultValue
- The default.
public double optDouble(java.lang.String key)
key
- A string which is the key.
public double optDouble(java.lang.String key, double defaultValue)
key
- A key string.defaultValue
- The default.
public int optInt(java.lang.String key)
key
- A key string.
public int optInt(java.lang.String key, int defaultValue)
key
- A key string.defaultValue
- The default.
public JSONArray optJSONArray(java.lang.String key)
key
- A key string.
public JSONObject optJSONObject(java.lang.String key)
key
- A key string.
public java.lang.String optString(java.lang.String key)
key
- A key string.
public java.lang.String optString(java.lang.String key, java.lang.String defaultValue)
key
- A key string.defaultValue
- The default.
public JSONObject put(java.lang.String key, boolean value)
key
- A key string.value
- A boolean which is the value.
public JSONObject put(java.lang.String key, double value)
key
- A key string.value
- A double which is the value.
public JSONObject put(java.lang.String key, int value)
key
- A key string.value
- An int which is the value.
public JSONObject put(java.lang.String key, java.lang.Object value) throws java.lang.NullPointerException
key
- A key string.value
- An object which is the value. It should be of one of these
types: Boolean, Double, Integer, JSONArray, JSONObject,
String, or the JSONObject.NULL object.
java.lang.NullPointerException
- The key must be non-null.public JSONObject putOpt(java.lang.String key, java.lang.Object value) throws java.lang.NullPointerException
key
- A key string.value
- An object which is the value. It should be of one of these
types: Boolean, Double, Integer, JSONArray, JSONObject,
String, or the JSONObject.NULL object.
java.lang.NullPointerException
- The key must be non-null.public static java.lang.String quote(java.lang.String string)
string
- A String
public java.lang.Object remove(java.lang.String key)
key
- The name to be removed.
public JSONArray toJSONArray(JSONArray names)
names
- A JSONArray containing a list of key strings. This determines
the sequence of the values in the result.
public java.lang.String toString()
Warning: This method assumes that the data structure is acyclical.
toString
in class java.lang.Object
{
(left
brace) and ending with }
(right
brace).public java.lang.String toString(int indentFactor)
Warning: This method assumes that the data structure is acyclical.
indentFactor
- The number of spaces to add to each level of indentation.
{
(left
brace) and ending with }
(right
brace).
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |