org.json.JSONStringer
JSONStringer provides a quick and convenient way of producing JSON text.
The texts produced strictly conform to JSON syntax rules. No whitespace is
added, so the results are ready for transmission or storage. Each instance of
JSONStringer can produce one JSON text.
A JSONStringer instance provides a value
method for appending
values to the
text, and a key
method for adding keys before values in objects. There are array
and endArray
methods that make and bound array values, and
object
and endObject
methods which make and bound
object values. All of these methods return the JSONStringer instance,
permitting cascade style. For example,
myString = new JSONStringer()
.object()
.key("JSON").value("Hello, World!")
.endObject()
.toString();
which produces the string
{"JSON":"Hello, World!"}
The first method called must be array
or object
.
There are no methods for adding commas or colons. JSONStringer adds them for
you. Objects and arrays can be nested up to 20 levels deep.
This can sometimes be easier than using a JSONObject to build a string.
Summary
Public Constructors
Public Methods
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
Details
Public Constructors
public
JSONStringer()
Make a fresh JSONStringer. It can be used to build one JSON text.
Public Methods
Begin appending a new array. All values until the balancing
endArray
will be appended to this array. The
endArray
method must be called to mark the array's end.
Throws
JSONException
| If the nesting is too deep, or if the object is
started in the wrong place (for example as a key or after the end of the
outermost array or object).
|
End an array. This method most be called to balance calls to
array
.
End an object. This method most be called to balance calls to
object
.
Append a key. The key will be associated with the next value. In an
object, every value must be preceded by a key.
Throws
JSONException
| If the key is out of place. For example, keys
do not belong in arrays or if the key is null.
|
Begin appending a new object. All keys and values until the balancing
endObject
will be appended to this object. The
endObject
method must be called to mark the object's end.
Throws
JSONException
| If the nesting is too deep, or if the object is
started in the wrong place (for example as a key or after the end of the
outermost array or object).
|
public
String
toString()
Return the JSON text. This method is used to obtain the product of the
JSONStringer instance. It will return
null
if there was a
problem in the construction of the JSON text (such as the calls to
array
were not properly balanced with calls to
endArray
).
Append an object value.
Parameters
o
| The object to append. It can be null, or a Boolean, Number,
String, JSONObject, or JSONArray. |
Append either the value
true
or the value
false
.