XML

public class XML

This provides static methods to convert an XML text into a JSONObject, and to covert a JSONObject into an XML text.

Author:JSON.org

Fields

AMP

public static final Character AMP

The Character ‘&’.

APOS

public static final Character APOS

The Character ‘’‘.

BANG

public static final Character BANG

The Character ‘!’.

EQ

public static final Character EQ

The Character ‘=’.

GT

public static final Character GT

The Character ‘>’.

LT

public static final Character LT

The Character ‘

QUEST

public static final Character QUEST

The Character ‘?’.

QUOT

public static final Character QUOT

The Character ‘”’.

SLASH

public static final Character SLASH

The Character ‘/’.

Methods

escape

public static String escape(String string)

Replace special characters with XML escapes:

& (ampersand) is replaced by &
< (less than) is replaced by &lt;
> (greater than) is replaced by &gt;
" (double quote) is replaced by &quot;
Parameters:
  • string – The string to be escaped.
Returns:

The escaped string.

noSpace

public static void noSpace(String string)

Throw an exception if the string contains whitespace. Whitespace is not allowed in tagNames and attributes.

Parameters:
  • string
Throws:

stringToValue

public static Object stringToValue(String string)

Try to convert a string into a number, boolean, or null. If the string can’t be converted, return the string. This is much less ambitious than JSONObject.stringToValue, especially because it does not attempt to convert plus forms, octal forms, hex forms, or E forms lacking decimal points.

Parameters:
  • string – A String.
Returns:

A simple JSON value.

toJSONObject

public static JSONObject toJSONObject(String string)

Convert a well-formed (but not necessarily valid) XML string into a JSONObject. Some information may be lost in this transformation because JSON is a data format and XML is a document format. XML uses elements, attributes, and content text, while JSON uses unordered collections of name/value pairs and arrays of values. JSON does not does not like to distinguish between elements and attributes. Sequences of similar elements are represented as JSONArrays. Content text may be placed in a “content” member. Comments, prologs, DTDs, and <[ [ ]]> are ignored.

Parameters:
  • string – The source string.
Throws:
Returns:

A JSONObject containing the structured data from the XML string.

toString

public static String toString(Object object)

Convert a JSONObject into a well-formed, element-normal XML string.

Parameters:
  • object – A JSONObject.
Throws:
Returns:

A string.

toString

public static String toString(Object object, String tagName)

Convert a JSONObject into a well-formed, element-normal XML string.

Parameters:
  • object – A JSONObject.
  • tagName – The optional name of the enclosing tag.
Throws:
Returns:

A string.