Package org.json
Class JSONWriter
- java.lang.Object
- 
- org.json.JSONWriter
 
- 
- Direct Known Subclasses:
- JSONStringer
 
 public class JSONWriter extends java.lang.ObjectJSONWriter 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 JSONWriter can produce one JSON text.A JSONWriter instance provides a valuemethod for appending values to the text, and akeymethod for adding keys before values in objects. There arearrayandendArraymethods that make and bound array values, andobjectandendObjectmethods which make and bound object values. All of these methods return the JSONWriter instance, permitting a cascade style. For example,new JSONWriter(myWriter) .object() .key("JSON") .value("Hello, World!") .endObject();which writes{"JSON":"Hello, World!"}The first method called must be arrayorobject. There are no methods for adding commas or colons. JSONWriter adds them for you. Objects and arrays can be nested up to 200 levels deep.This can sometimes be easier than using a JSONObject to build a string. 
- 
- 
Constructor SummaryConstructors Constructor Description JSONWriter(java.lang.Appendable w)Make a fresh JSONWriter.
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description JSONWriterarray()Begin appending a new array.JSONWriterendArray()End an array.JSONWriterendObject()End an object.JSONWriterkey(java.lang.String string)Append a key.JSONWriterobject()Begin appending a new object.JSONWritervalue(boolean b)Append either the valuetrueor the valuefalse.JSONWritervalue(double d)Append a double value.JSONWritervalue(long l)Append a long value.JSONWritervalue(java.lang.Object object)Append an object value.static java.lang.StringvalueToString(java.lang.Object value)Make a JSON text of an Object value.
 
- 
- 
- 
Method Detail- 
arraypublic JSONWriter array() throws JSONException Begin appending a new array. All values until the balancingendArraywill be appended to this array. TheendArraymethod must be called to mark the array's end.- Returns:
- this
- 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).
 
 - 
endArraypublic JSONWriter endArray() throws JSONException End an array. This method most be called to balance calls toarray.- Returns:
- this
- Throws:
- JSONException- If incorrectly nested.
 
 - 
endObjectpublic JSONWriter endObject() throws JSONException End an object. This method most be called to balance calls toobject.- Returns:
- this
- Throws:
- JSONException- If incorrectly nested.
 
 - 
keypublic JSONWriter key(java.lang.String string) throws JSONException Append a key. The key will be associated with the next value. In an object, every value must be preceded by a key.- Parameters:
- string- A key string.
- Returns:
- this
- Throws:
- JSONException- If the key is out of place. For example, keys do not belong in arrays or if the key is null.
 
 - 
objectpublic JSONWriter object() throws JSONException Begin appending a new object. All keys and values until the balancingendObjectwill be appended to this object. TheendObjectmethod must be called to mark the object's end.- Returns:
- this
- 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).
 
 - 
valueToStringpublic static java.lang.String valueToString(java.lang.Object value) throws JSONExceptionMake a JSON text of an Object value. If the object has an value.toJSONString() method, then that method will be used to produce the JSON text. The method is required to produce a strictly conforming text. If the object does not contain a toJSONString method (which is the most common case), then a text will be produced by other means. If the value is an array or Collection, then a JSONArray will be made from it and its toJSONString method will be called. If the value is a MAP, then a JSONObject will be made from it and its toJSONString method will be called. Otherwise, the value's toString method will be called, and the result will be quoted.Warning: This method assumes that the data structure is acyclical. - Parameters:
- value- The value to be serialized.
- Returns:
- a printable, displayable, transmittable representation of the
         object, beginning with {(left brace) and ending with}(right brace).
- Throws:
- JSONException- If the value is or contains an invalid number.
 
 - 
valuepublic JSONWriter value(boolean b) throws JSONException Append either the valuetrueor the valuefalse.- Parameters:
- b- A boolean.
- Returns:
- this
- Throws:
- JSONException- if a called function has an error
 
 - 
valuepublic JSONWriter value(double d) throws JSONException Append a double value.- Parameters:
- d- A double.
- Returns:
- this
- Throws:
- JSONException- If the number is not finite.
 
 - 
valuepublic JSONWriter value(long l) throws JSONException Append a long value.- Parameters:
- l- A long.
- Returns:
- this
- Throws:
- JSONException- if a called function has an error
 
 - 
valuepublic JSONWriter value(java.lang.Object object) throws JSONException Append an object value.- Parameters:
- object- The object to append. It can be null, or a Boolean, Number, String, JSONObject, or JSONArray, or an object that implements JSONString.
- Returns:
- this
- Throws:
- JSONException- If the value is out of sequence.
 
 
- 
 
-