Package jakarta.json
Interface JsonReader
- All Superinterfaces:
AutoCloseable,Closeable
Reads a JSON
object or an array
structure from an input source.
The class Json contains methods to create readers from
input sources (InputStream and Reader).
The following example demonstrates how to read an empty JSON array from a string:
JsonReader jsonReader = Json.createReader(new StringReader("[]"));
JsonArray array = jsonReader.readArray();
jsonReader.close();
The class JsonReaderFactory also contains methods to create
JsonReader instances. A factory instance can be used to create
multiple reader instances with the same configuration. This the preferred
way to create multiple instances. A sample usage is shown in the following
example:
JsonReaderFactory factory = Json.createReaderFactory(config);
JsonReader reader1 = factory.createReader(...);
JsonReader reader2 = factory.createReader(...);
-
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Closes this reader and frees any resources associated with the reader.read()Returns a JSON array or object that is represented in the input source.Returns a JSON array that is represented in the input source.Returns a JSON object that is represented in the input source.default JsonValueReturns a JSON value that is represented in the input source.
-
Method Details
-
read
JsonStructure read()Returns a JSON array or object that is represented in the input source. This method needs to be called only once for a reader instance.- Returns:
- a JSON object or array
- Throws:
JsonException- if a JSON object or array cannot be created due to i/o error (IOException would be cause of JsonException)JsonParsingException- if a JSON object or array cannot be created due to incorrect representationIllegalStateException- if read, readObject, readArray, readValue or close method is already called
-
readObject
JsonObject readObject()Returns a JSON object that is represented in the input source. This method needs to be called only once for a reader instance.- Returns:
- a JSON object
- Throws:
JsonException- if a JSON object cannot be created due to i/o error (IOException would be cause of JsonException)JsonParsingException- if a JSON object cannot be created due to incorrect representationIllegalStateException- if read, readObject, readArray, readValue or close method is already called
-
readArray
JsonArray readArray()Returns a JSON array that is represented in the input source. This method needs to be called only once for a reader instance.- Returns:
- a JSON array
- Throws:
JsonException- if a JSON array cannot be created due to i/o error (IOException would be cause of JsonException)JsonParsingException- if a JSON array cannot be created due to incorrect representationIllegalStateException- if read, readObject, readArray, readValue or close method is already called
-
readValue
Returns a JSON value that is represented in the input source. This method needs to be called only once for a reader instance.- Returns:
- a JSON value
- Throws:
JsonException- if a JSON value be created due to i/o error (IOException would be cause of JsonException)JsonParsingException- if a JSON value cannot be created due to incorrect representationIllegalStateException- if read, readObject, readArray, readValue or close method is already called- Since:
- 1.1
-
close
void close()Closes this reader and frees any resources associated with the reader. This method closes the underlying input source.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
JsonException- if an i/o error occurs (IOException would be cause of JsonException)
-