public class JSONObject extends Object
The generic get(){/code} and opt(){/code} methods return an object, which you can cast or query for type. There are also typed get{/code} and opt{/code} methods that do type checking and type coercion for you. The opt methods differ from the get methods in that they do not throw. Instead, they return a specified value, such as null.
The put{/code} methods add or replace values in an object. For example,
myString = new JSONObject().put("JSON", "Hello, World!").toString();
produces the string {"JSON": "Hello, World"}{/code}.
The texts produced by the toString{/code} methods strictly conform to the JSON syntax rules. The constructors are more forgiving in the texts they will accept:
| Modifier and Type | Field and Description |
|---|---|
static Object |
NULL
It is sometimes more convenient and less ambiguous to have a
NULL{/code} object than to use Java's null{/code} value.
|
| Constructor and Description |
|---|
JSONObject()
Construct an empty JSONObject.
|
JSONObject(JSONObject jo,
String[] names)
Construct a JSONObject from a subset of another JSONObject.
|
JSONObject(JSONTokener x)
Construct a JSONObject from a JSONTokener.
|
JSONObject(Map map)
Construct a JSONObject from a Map.
|
JSONObject(Object bean)
Construct a JSONObject from an Object using bean getters.
|
JSONObject(Object object,
String[] names)
Construct a JSONObject from an Object, using reflection to find the
public members.
|
JSONObject(String source)
Construct a JSONObject from a source JSON text string.
|
JSONObject(String baseName,
Locale locale)
Construct a JSONObject from a ResourceBundle.
|
| Modifier and Type | Method and Description |
|---|---|
JSONObject |
append(String key,
Object value)
Append values to the array under a key.
|
Object |
get(String key)
Get the value object associated with a key.
|
boolean |
getBoolean(String key)
Get the boolean value associated with a key.
|
int |
getInt(String key)
Get the int value associated with a key.
|
JSONArray |
getJSONArray(String key)
Get the JSONArray value associated with a key.
|
JSONObject |
getJSONObject(String key)
Get the JSONObject value associated with a key.
|
long |
getLong(String key)
Get the long value associated with a key.
|
String |
getString(String key)
Get the string associated with a key.
|
boolean |
has(String key)
Determine if the JSONObject contains a specific key.
|
boolean |
isNull(String key)
Determine if the value associated with the key is null or if there is
no value.
|
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 String |
numberToString(Number number)
Produce a string from a Number.
|
Object |
opt(String key)
Get an optional value associated with a key.
|
JSONObject |
put(String key,
boolean value)
Put a key/boolean pair in the JSONObject.
|
JSONObject |
put(String key,
Collection value) |
JSONObject |
put(String key,
double value)
Put a key/double pair in the JSONObject.
|
JSONObject |
put(String key,
int value)
Put a key/int pair in the JSONObject.
|
JSONObject |
put(String key,
long value)
Put a key/long pair in the JSONObject.
|
JSONObject |
put(String key,
Map value)
Put a key/value pair in the JSONObject, where the value will be a
JSONObject which is produced from a Map.
|
JSONObject |
put(String key,
Object value)
Put a key/value pair in the JSONObject.
|
JSONObject |
putOnce(String key,
Object value)
Put a key/value pair in the JSONObject, but only if the key and the
value are both non-null, and only if there is not already a member
with that name.
|
JSONObject |
putOpt(String key,
Object value)
Put a key/value pair in the JSONObject, but only if the
key and the value are both non-null.
|
static String |
quote(String string)
Produce a string in double quotes with backslash sequences in all the
right places.
|
Object |
remove(String key)
Remove a name and its value, if present.
|
Iterator |
sortedKeys()
Get an enumeration of the keys of the JSONObject.
|
static Object |
stringToValue(String string)
Try to convert a string into a number, boolean, or null.
|
static void |
testValidity(Object o)
Throw an exception if the object is a NaN or infinite number.
|
String |
toString()
Make a JSON text of this JSONObject.
|
String |
toString(int indentFactor)
Make a prettyprinted JSON text of this JSONObject.
|
static String |
valueToString(Object value)
Make a JSON text of an Object value.
|
static Object |
wrap(Object object)
Wrap an object, if necessary.
|
Writer |
write(Writer writer) |
public static final Object NULL
public JSONObject()
public JSONObject(JSONObject jo, String[] names)
jo - A JSONObject.names - An array of strings.public JSONObject(JSONTokener x) throws JSONException
x - A JSONTokener object containing the source string.JSONException - If there is a syntax error in the source string
or a duplicated key.public JSONObject(Map map)
map - A map object that can be used to initialize the contents of
the JSONObject.public JSONObject(Object bean)
The key is formed by removing the "get"{/code} or "is"{/code} prefix. If the second remaining character is not upper case, then the first character is converted to lower case.
For example, if an object has a method named "getName"{/code}, and if the result of calling object.getName(){/code} is "Larry Fine"{/code}, then the JSONObject will contain "name": "Larry Fine"{/code}.
bean - An object that has getter methods that should be used
to make a JSONObject.public JSONObject(Object object, String[] names)
object - An object that has fields that should be used to make a
JSONObject.names - An array of strings, the names of the fields to be obtained
from the object.public JSONObject(String source) throws JSONException
source - A string beginning
with {{/code} (left brace) and ending
with }{/code} (right brace).JSONException - If there is a syntax error in the source
string or a duplicated key.public JSONObject(String baseName, Locale locale) throws JSONException
baseName - The ResourceBundle base name.locale - The Locale to load the ResourceBundle for.JSONException - If any JSONExceptions are detected.public JSONObject append(String key, Object value) throws JSONException
key - A key string.value - An object to be accumulated under the key.JSONException - If the key is null or if the current value
associated with the key is not a JSONArray.public Object get(String key) throws JSONException
key - A key string.JSONException - if the key is not found.public boolean getBoolean(String key) throws JSONException
key - A key string.JSONException - if the value is not a Boolean or the String "true" or "false".public int getInt(String key) throws JSONException
key - A key string.JSONException - if the key is not found or if the value cannot
be converted to an integer.public JSONArray getJSONArray(String key) throws JSONException
key - A key string.JSONException - if the key is not found or
if the value is not a JSONArray.public JSONObject getJSONObject(String key) throws JSONException
key - A key string.JSONException - if the key is not found or
if the value is not a JSONObject.public long getLong(String key) throws JSONException
key - A key string.JSONException - if the key is not found or if the value cannot
be converted to a long.public String getString(String key) throws JSONException
key - A key string.JSONException - if the key is not found.public boolean has(String key)
key - A key string.public boolean isNull(String key)
key - A key string.public Iterator keys()
public int length()
public JSONArray names()
public static String numberToString(Number number) throws JSONException
number - A NumberJSONException - If n is a non-finite number.public Object opt(String key)
key - A key string.public JSONObject put(String key, boolean value) throws JSONException
key - A key string.value - A boolean which is the value.JSONException - If the key is null.public JSONObject put(String key, Collection value) throws JSONException
JSONExceptionpublic JSONObject put(String key, double value) throws JSONException
key - A key string.value - A double which is the value.JSONException - If the key is null or if the number is invalid.public JSONObject put(String key, int value) throws JSONException
key - A key string.value - An int which is the value.JSONException - If the key is null.public JSONObject put(String key, long value) throws JSONException
key - A key string.value - A long which is the value.JSONException - If the key is null.public JSONObject put(String key, Map value) throws JSONException
key - A key string.value - A Map value.JSONException - when failed to put valuepublic JSONObject put(String key, Object value) throws JSONException
key - A key string.value - An object which is the value. It should be of one of these
types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,
or the JSONObject.NULL object.JSONException - If the value is non-finite number
or if the key is null.public JSONObject putOnce(String key, Object value) throws JSONException
key - key to be putvalue - value to be putJSONException - if the key is a duplicatepublic JSONObject putOpt(String key, Object value) throws JSONException
key - A key string.value - An object which is the value. It should be of one of these
types: Boolean, Double, Integer, JSONArray, JSONObject, Long, String,
or the JSONObject.NULL object.JSONException - If the value is a non-finite number.public static String quote(String string)
string - A Stringpublic Object remove(String key)
key - The name to be removed.public Iterator sortedKeys()
public static Object stringToValue(String string)
string - A String.public static void testValidity(Object o) throws JSONException
o - The object to test.JSONException - If o is a non-finite number.public String toString()
Warning: This method assumes that the data structure is acyclical.
public String toString(int indentFactor) throws JSONException
Warning: This method assumes that the data structure is acyclical.
indentFactor - The number of spaces to add to each level of
indentation.JSONException - If the object contains an invalid number.public static String valueToString(Object value) throws JSONException
Warning: This method assumes that the data structure is acyclical.
value - The value to be serialized.JSONException - If the value is or contains an invalid number.public static Object wrap(Object object)
object - The object to wrappublic Writer write(Writer writer) throws JSONException
JSONExceptionCopyright © 2016. All rights reserved.