/** * 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 * <code><[ [ ]]></code> are ignored. * * @param string The source string. * @return A JSONObject containing the structured data from the XML string. * @throws JSONException */ public static JSONObject toJSONObject(String string) throws JSONException { JSONObject jo = new JSONObject(); XMLTokener x = new XMLTokener(string); while (x.more() && x.skipPast("<")) { parse(x, jo, null); } return jo; }
/** * 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 * <code><[ [ ]]></code> are ignored. * * @param string The source string. * @return A JSONObject containing the structured data from the XML string. * @throws JSONException */ public static JSONObject toJSONObject(final String string) throws JSONException { final JSONObject o = new JSONObject(); final XMLTokener x = new XMLTokener(string); while (x.more() && x.skipPast("<")) { parse(x, o, null); } return o; }