程序包 com.sh.json.util
类 JSONUtils
java.lang.Object
com.sh.json.util.JSONUtils
Provides useful methods on java objects and JSON values.
-
字段概要
字段 -
方法概要
修饰符和类型方法说明static StringTransforms the string into a valid Java Identifier.
The default strategy is JavaIdentifierTransformer.NOOPstatic StringconvertToJavaIdentifier(String key, JsonConfig jsonConfig) Transforms the string into a valid Java Identifier.
The default strategy is JavaIdentifierTransformer.NOOPstatic StringdoubleToString(double d) Produce a string from a double.static StringgetFunctionBody(String function) Returns the body of a function literal.static StringgetFunctionParams(String function) Returns the params of a function literal.static ClassgetInnerComponentType(Class type) Returns the inner-most component type of an Array.static MorpherRegistryReturns the singleton MorpherRegistry.static MapgetProperties(JSONObject jsonObject) Creates a Map with all the properties of the JSONObject.static ClassgetTypeClass(Object obj) Returns the JSON type.
Values are Object, String, Boolean, Number(subclasses) & JSONFunction.static intReturns the hashcode of value.
If null it will return JSONNull.getInstance().hashCode().
If value is JSON, JSONFunction or String, value.hashCode is returned, otherwise the value is transformed to a String an its hashcode is returned.static booleanReturns true if the input has single-quotes or double-quotes at both sides.static booleanTests if a Class represents an array or Collection.static booleanTests if obj is an array or Collection.static booleanTests if Class represents a Boolean or primitive booleanstatic booleanTests if obj is a Boolean or primitive booleanstatic booleanTests if Class represents a primitive double or wrapper.static booleanisFunction(Object obj) Tests if obj is javaScript function.
Obj must be a non-null String and match"^function[ ]? static booleanisFunctionHeader(Object obj) Tests if obj is javaScript function header.
Obj must be a non-null String and match "^function[ ]?static booleanisJavaIdentifier(String str) Returns trus if str represents a valid Java identifier.static booleanisJsonKeyword(String input, JsonConfig jsonConfig) static booleanTests if the obj is a javaScript null.static booleanTests if Class represents a primitive number or wrapper.static booleanTests if obj is a primitive number or wrapper.static booleanTests if obj is not a boolean, number, string or array.static booleanTests if Class represents a String or a charstatic booleanTests if obj is a String or a charstatic booleanTests if the String possibly represents a valid JSON String.
Valid JSON strings are: "null" starts with "[" and ends with "]" starts with "{" and ends with "}"static org.apache.commons.beanutils.DynaBeannewDynaBean(JSONObject jsonObject) Creates a new MorphDynaBean from a JSONObject.static org.apache.commons.beanutils.DynaBeannewDynaBean(JSONObject jsonObject, JsonConfig jsonConfig) Creates a new MorphDynaBean from a JSONObject.static StringProduce a string from a Number.static StringProduce a string in double quotes with backslash sequences in all the right places.static StringstripQuotes(String input) Strips any single-quotes or double-quotes from both sides of the string.static voidThrow an exception if the object is an NaN or infinite number.static NumbertransformNumber(Number input) Transforms a Number into a valid javascript number.
Float gets promoted to Double.
Byte and Short get promoted to Integer.
Long gets downgraded to Integer if possible.static StringvalueToString(Object value) Make a JSON text of an Object value.static StringvalueToString(Object value, int indentFactor, int indent) Make a prettyprinted JSON text of an object value.
-
字段详细资料
-
方法详细资料
-
convertToJavaIdentifier
Transforms the string into a valid Java Identifier.
The default strategy is JavaIdentifierTransformer.NOOP- 抛出:
JSONException- if the string can not be transformed.
-
convertToJavaIdentifier
Transforms the string into a valid Java Identifier.
The default strategy is JavaIdentifierTransformer.NOOP- 抛出:
JSONException- if the string can not be transformed.
-
doubleToString
Produce a string from a double. The string "null" will be returned if the number is not finite.- 参数:
d- A double.- 返回:
- A String.
-
getFunctionBody
Returns the body of a function literal. -
getFunctionParams
Returns the params of a function literal. -
getInnerComponentType
Returns the inner-most component type of an Array. -
getMorpherRegistry
Returns the singleton MorpherRegistry. -
getProperties
Creates a Map with all the properties of the JSONObject. -
getTypeClass
Returns the JSON type.
Values are Object, String, Boolean, Number(subclasses) & JSONFunction. -
hashCode
Returns the hashcode of value.
If null it will return JSONNull.getInstance().hashCode().
If value is JSON, JSONFunction or String, value.hashCode is returned, otherwise the value is transformed to a String an its hashcode is returned. -
isArray
Tests if a Class represents an array or Collection. -
isArray
Tests if obj is an array or Collection. -
isBoolean
Tests if Class represents a Boolean or primitive boolean -
isBoolean
Tests if obj is a Boolean or primitive boolean -
isDouble
Tests if Class represents a primitive double or wrapper. -
isFunction
Tests if obj is javaScript function.
Obj must be a non-null String and match"^function[ ]?\\(.*\\)[ ]?\\{.*\\}$" -
isFunctionHeader
Tests if obj is javaScript function header.
Obj must be a non-null String and match "^function[ ]?\\(.*\\)$" -
isJavaIdentifier
Returns trus if str represents a valid Java identifier. -
isNull
Tests if the obj is a javaScript null. -
isNumber
Tests if Class represents a primitive number or wrapper. -
isNumber
Tests if obj is a primitive number or wrapper. -
isObject
Tests if obj is not a boolean, number, string or array. -
isString
Tests if Class represents a String or a char -
isString
Tests if obj is a String or a char -
mayBeJSON
Tests if the String possibly represents a valid JSON String.
Valid JSON strings are:- "null"
- starts with "[" and ends with "]"
- starts with "{" and ends with "}"
-
newDynaBean
Creates a new MorphDynaBean from a JSONObject. The MorphDynaBean will have all the properties of the original JSONObject with the most accurate type. Values of properties are not copied. -
newDynaBean
public static org.apache.commons.beanutils.DynaBean newDynaBean(JSONObject jsonObject, JsonConfig jsonConfig) Creates a new MorphDynaBean from a JSONObject. The MorphDynaBean will have all the properties of the original JSONObject with the most accurate type. Values of properties are not copied. -
numberToString
Produce a string from a Number.- 参数:
n- A Number- 返回:
- A String.
- 抛出:
JSONException- If n is a non-finite number.
-
quote
Produce a string in double quotes with backslash sequences in all the right places. A backslash will be inserted within </, allowing JSON text to be delivered in HTML. In JSON text, a string cannot contain a control character or an unescaped quote or backslash.
CAUTION: ifstringrepresents a javascript function, translation of characters will not take place. This will produce a non-conformant JSON text.- 参数:
string- A String- 返回:
- A String correctly formatted for insertion in a JSON text.
-
stripQuotes
Strips any single-quotes or double-quotes from both sides of the string. -
hasQuotes
Returns true if the input has single-quotes or double-quotes at both sides. -
isJsonKeyword
-
testValidity
Throw an exception if the object is an NaN or infinite number.- 参数:
o- The object to test.- 抛出:
JSONException- If o is a non-finite number.
-
transformNumber
Transforms a Number into a valid javascript number.
Float gets promoted to Double.
Byte and Short get promoted to Integer.
Long gets downgraded to Integer if possible. -
valueToString
Make 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 the rules.Warning: This method assumes that the data structure is acyclical.
- 参数:
value- The value to be serialized.- 返回:
- a printable, displayable, transmittable representation of the
object, beginning with
{(left brace) and ending with}(right brace). - 抛出:
JSONException- If the value is or contains an invalid number.
-
valueToString
Make a prettyprinted JSON text of an object value.Warning: This method assumes that the data structure is acyclical.
- 参数:
value- The value to be serialized.indentFactor- The number of spaces to add to each level of indentation.indent- The indentation of the top level.- 返回:
- a printable, displayable, transmittable representation of the
object, beginning with
{(left brace) and ending with}(right brace). - 抛出:
JSONException- If the object contains an invalid number.
-