diff --git a/README b/README.md similarity index 56% rename from README rename to README.md index 9783046..54abcb0 100644 --- a/README +++ b/README.md @@ -1,4 +1,7 @@ JSON in Java [package org.json] +=============================== + +[![Maven Central](https://img.shields.io/maven-central/v/org.json/json.svg)](https://mvnrepository.com/artifact/org.json/json) JSON is a light-weight, language independent, data interchange format. See http://www.JSON.org/ @@ -18,64 +21,63 @@ package. The package compiles on Java 1.6-1.8. -JSONObject.java: The JSONObject can parse text from a String or a JSONTokener +**JSONObject.java**: The `JSONObject` can parse text from a `String` or a `JSONTokener` to produce a map-like object. The object provides methods for manipulating its contents, and for producing a JSON compliant object serialization. -JSONArray.java: The JSONArray can parse text from a String or a JSONTokener +**JSONArray.java**: The `JSONArray` can parse text from a String or a `JSONTokener` to produce a vector-like object. The object provides methods for manipulating its contents, and for producing a JSON compliant array serialization. -JSONTokener.java: The JSONTokener breaks a text into a sequence of individual -tokens. It can be constructed from a String, Reader, or InputStream. +**JSONTokener.java**: The `JSONTokener` breaks a text into a sequence of individual +tokens. It can be constructed from a `String`, `Reader`, or `InputStream`. -JSONException.java: The JSONException is the standard exception type thrown +**JSONException.java**: The `JSONException` is the standard exception type thrown by this package. -JSONPointer.java: Implementation of +**JSONPointer.java**: Implementation of [JSON Pointer (RFC 6901)](https://tools.ietf.org/html/rfc6901). Supports JSON Pointers both in the form of string representation and URI fragment representation. -JSONString.java: The JSONString interface requires a toJSONString method, +**JSONString.java**: The `JSONString` interface requires a `toJSONString` method, allowing an object to provide its own serialization. -JSONStringer.java: The JSONStringer provides a convenient facility for +**JSONStringer.java**: The `JSONStringer` provides a convenient facility for building JSON strings. -JSONWriter.java: The JSONWriter provides a convenient facility for building +**JSONWriter.java**: The `JSONWriter` provides a convenient facility for building JSON text through a writer. -CDL.java: CDL provides support for converting between JSON and comma +**CDL.java**: `CDL` provides support for converting between JSON and comma delimited lists. -Cookie.java: Cookie provides support for converting between JSON and cookies. +**Cookie.java**: `Cookie` provides support for converting between JSON and cookies. -CookieList.java: CookieList provides support for converting between JSON and +**CookieList.java**: `CookieList` provides support for converting between JSON and cookie lists. -HTTP.java: HTTP provides support for converting between JSON and HTTP headers. +**HTTP.java**: `HTTP` provides support for converting between JSON and HTTP headers. -HTTPTokener.java: HTTPTokener extends JSONTokener for parsing HTTP headers. +**HTTPTokener.java**: `HTTPTokener` extends `JSONTokener` for parsing HTTP headers. -XML.java: XML provides support for converting between JSON and XML. +**XML.java**: `XML` provides support for converting between JSON and XML. -JSONML.java: JSONML provides support for converting between JSONML and XML. +**JSONML.java**: `JSONML` provides support for converting between JSONML and XML. -XMLTokener.java: XMLTokener extends JSONTokener for parsing XML text. +**XMLTokener.java**: `XMLTokener` extends `JSONTokener` for parsing XML text. -Unit tests are maintained in a separate project. Contributing developers can test -JSON-java pull requests with the code in this project: +Unit tests are maintained in a separate project. Contributing developers can test +JSON-java pull requests with the code in this project: https://github.com/stleary/JSON-Java-unit-test -Numeric types in this package comply with ECMA-404: The JSON Data Interchange Format -(http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf) and -RFC 7159: The JavaScript Object Notation (JSON) Data Interchange Format -(https://tools.ietf.org/html/rfc7159#section-6). -This package fully supports Integer, Long, and Double Java types. Partial support -for BigInteger and BigDecimal values in JSONObject and JSONArray objects is provided -in the form of get(), opt(), and put() API methods. +Numeric types in this package comply with +[ECMA-404: The JSON Data Interchange Format](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf) and +[RFC 7159: The JavaScript Object Notation (JSON) Data Interchange Format](https://tools.ietf.org/html/rfc7159#section-6). +This package fully supports `Integer`, `Long`, and `Double` Java types. Partial support +for `BigInteger` and `BigDecimal` values in `JSONObject` and `JSONArray` objects is provided +in the form of `get()`, `opt()`, and `put()` API methods. Although 1.6 compatibility is currently supported, it is not a project goal and may be removed in some future release. @@ -89,16 +91,18 @@ invalid number formats (1.2e6.3) will cause errors as such documents can not be reliably. Release history: + +~~~ 20171018 Checkpoint for recent commits. 20170516 Roll up recent commits. 20160810 Revert code that was breaking opt*() methods. -20160807 This release contains a bug in the JSONObject.opt*() and JSONArray.opt*() methods, +20160807 This release contains a bug in the JSONObject.opt*() and JSONArray.opt*() methods, it is not recommended for use. Java 1.6 compatability fixed, JSONArray.toList() and JSONObject.toMap(), -RFC4180 compatibility, JSONPointer, some exception fixes, optional XML type conversion. +RFC4180 compatibility, JSONPointer, some exception fixes, optional XML type conversion. Contains the latest code as of 7 Aug, 2016 20160212 Java 1.6 compatibility, OSGi bundle. Contains the latest code as of 12 Feb, 2016. @@ -106,9 +110,11 @@ Contains the latest code as of 7 Aug, 2016 20151123 JSONObject and JSONArray initialization with generics. Contains the latest code as of 23 Nov, 2015. -20150729 Checkpoint for Maven central repository release. Contains the latest code -as of 29 July, 2015. +20150729 Checkpoint for Maven central repository release. Contains the latest code +as of 29 July, 2015. +~~~ -JSON-java releases can be found by searching the Maven repository for groupId "org.json" -and artifactId "json". For example: + +JSON-java releases can be found by searching the Maven repository for groupId "org.json" +and artifactId "json". For example: https://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22org.json%22%20AND%20a%3A%22json%22