public final class JSONUtil
extends java.lang.Object
| 构造器和说明 |
|---|
JSONUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static JSONArray |
createArray()
创建 JSONArray
|
static JSONObject |
createObj()
创建JSONObject
|
static java.lang.String |
escape(java.lang.String str)
转义显示不可见字符
|
static java.lang.String |
formatJsonStr(java.lang.String jsonStr)
格式化JSON字符串,此方法并不严格检查JSON的格式正确与否
|
static java.lang.Object |
getByExp(JSON json,
java.lang.String expression)
已过时。
|
static java.lang.Object |
getByPath(JSON json,
java.lang.String expression)
通过表达式获取JSON中嵌套的对象
.表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name |
static boolean |
isJson(java.lang.String str)
是否为JSON字符串,首尾都为大括号或中括号判定为JSON字符串
|
static boolean |
isJsonArray(java.lang.String str)
是否为JSONObject字符串,首尾都为大括号或中括号判定为JSON字符串
|
static boolean |
isJsonObj(java.lang.String str)
是否为JSONObject字符串,首尾都为大括号或中括号判定为JSON字符串
|
static JSON |
parse(java.lang.Object obj)
转换对象为JSON
支持的对象: String: 转换为相应的对象 Array Collection:转换为JSONArray Bean对象:转为JSONObject |
static JSONArray |
parseArray(java.lang.Object arrayOrCollection)
JSON字符串转JSONArray
|
static JSONArray |
parseArray(java.lang.Object arrayOrCollection,
boolean ignoreNullValue)
JSON字符串转JSONArray
|
static JSONArray |
parseArray(java.lang.String jsonStr)
JSON字符串转JSONArray
|
static JSONObject |
parseFromMap(java.util.Map<?,?> map)
Map转化为JSONObject
|
static JSONObject |
parseFromResourceBundle(java.util.ResourceBundle bundle)
ResourceBundle转化为JSONObject
|
static JSONObject |
parseFromXml(java.lang.String xmlStr)
XML字符串转为JSONObject
|
static JSONObject |
parseObj(java.lang.Object obj)
JSON字符串转JSONObject对象
此方法会忽略空值,但是对JSON字符串不影响 |
static JSONObject |
parseObj(java.lang.Object obj,
boolean ignoreNullValue)
JSON字符串转JSONObject对象
|
static JSONObject |
parseObj(java.lang.String jsonStr)
JSON字符串转JSONObject对象
|
static void |
putByPath(JSON json,
java.lang.String expression,
java.lang.Object value)
设置表达式指定位置(或filed对应)的值
若表达式指向一个JSONArray则设置其坐标对应位置的值,若指向JSONObject则put对应key的值 注意:如果为JSONArray,则设置值得下标不能大于已有JSONArray的长度 .表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表达式,可以获取集合等对象中对应index的值 表达式栗子: persion persion.name persons[3] person.friends[5].name |
static java.lang.String |
quote(java.lang.String string)
对所有双引号做转义处理(使用双反斜杠做转义)
为了能在HTML中较好的显示,会将</转义为<\/ JSON字符串中不能包含控制字符和未经转义的引号和反斜杠 |
static java.lang.String |
quote(java.lang.String string,
boolean isWrap)
对所有双引号做转义处理(使用双反斜杠做转义)
为了能在HTML中较好的显示,会将</转义为<\/ JSON字符串中不能包含控制字符和未经转义的引号和反斜杠 |
static java.io.Writer |
quote(java.lang.String str,
java.io.Writer writer)
对所有双引号做转义处理(使用双反斜杠做转义)
为了能在HTML中较好的显示,会将</转义为<\/ JSON字符串中不能包含控制字符和未经转义的引号和反斜杠 |
static java.io.Writer |
quote(java.lang.String str,
java.io.Writer writer,
boolean isWrap)
对所有双引号做转义处理(使用双反斜杠做转义)
为了能在HTML中较好的显示,会将</转义为<\/ JSON字符串中不能包含控制字符和未经转义的引号和反斜杠 |
static JSON |
readJSON(java.io.File file,
java.nio.charset.Charset charset)
读取JSON
|
static JSONArray |
readJSONArray(java.io.File file,
java.nio.charset.Charset charset)
读取JSONArray
|
static JSONObject |
readJSONObject(java.io.File file,
java.nio.charset.Charset charset)
读取JSONObject
|
static <T> T |
toBean(JSONObject json,
java.lang.Class<T> beanClass)
转为实体类对象,转换异常将被抛出
|
static <T> T |
toBean(JSONObject json,
java.lang.Class<T> beanClass,
boolean ignoreError)
转为实体类对象
|
static <T> T |
toBean(java.lang.String jsonString,
java.lang.Class<T> beanClass)
JSON字符串转为实体类对象,转换异常将被抛出
|
static java.lang.String |
toJsonPrettyStr(JSON json)
转为JSON字符串
|
static java.lang.String |
toJsonPrettyStr(java.lang.Object obj)
转换为格式化后的JSON字符串
|
static java.lang.String |
toJsonStr(JSON json)
转为JSON字符串
|
static java.lang.String |
toJsonStr(JSON json,
int indentFactor)
转为JSON字符串
|
static java.lang.String |
toJsonStr(java.lang.Object obj)
转换为JSON字符串
|
static <T> java.util.List<T> |
toList(JSONArray jsonArray,
java.lang.Class<T> elementType)
将JSONArray转换为Bean的List,默认为ArrayList
|
static java.lang.String |
toXmlStr(JSON json)
转换为XML字符串
|
static java.lang.Object |
wrap(java.lang.Object object,
boolean ignoreNullValue)
在需要的时候包装对象
包装包括: null =》 JSONNull.NULL
array or collection =》 JSONArray
map =》 JSONObject
standard property (Double, String, et al) =》 原对象
来自于java包 =》 字符串
其它 =》 尝试包装为JSONObject,否则返回null
|
static JSONObject |
xmlToJson(java.lang.String xml)
XML转JSONObject
转换过程中一些信息可能会丢失,JSON中无法区分节点和属性,相同的节点将被处理为JSONArray。 |
public static JSONObject createObj()
public static JSONArray createArray()
public static JSONObject parseObj(java.lang.String jsonStr)
jsonStr - JSON字符串public static JSONObject parseObj(java.lang.Object obj)
obj - Bean对象或者Mappublic static JSONObject parseObj(java.lang.Object obj, boolean ignoreNullValue)
obj - Bean对象或者MapignoreNullValue - 是否忽略空值,如果source为JSON字符串,不忽略空值public static JSONArray parseArray(java.lang.String jsonStr)
jsonStr - JSON字符串public static JSONArray parseArray(java.lang.Object arrayOrCollection)
arrayOrCollection - 数组或集合对象public static JSONArray parseArray(java.lang.Object arrayOrCollection, boolean ignoreNullValue)
arrayOrCollection - 数组或集合对象ignoreNullValue - 是否忽略空值public static JSON parse(java.lang.Object obj)
obj - 对象public static JSONObject parseFromXml(java.lang.String xmlStr)
xmlStr - XML字符串public static JSONObject parseFromMap(java.util.Map<?,?> map)
map - Mappublic static JSONObject parseFromResourceBundle(java.util.ResourceBundle bundle)
bundle - ResourceBundle文件public static JSON readJSON(java.io.File file, java.nio.charset.Charset charset) throws IORuntimeException
file - JSON文件charset - 编码IORuntimeException - IO异常public static JSONObject readJSONObject(java.io.File file, java.nio.charset.Charset charset) throws IORuntimeException
file - JSON文件charset - 编码IORuntimeException - IO异常public static JSONArray readJSONArray(java.io.File file, java.nio.charset.Charset charset) throws IORuntimeException
file - JSON文件charset - 编码IORuntimeException - IO异常public static java.lang.String toJsonStr(JSON json, int indentFactor)
json - JSONindentFactor - 每一级别的缩进public static java.lang.String toJsonStr(JSON json)
json - JSONpublic static java.lang.String toJsonPrettyStr(JSON json)
json - JSONpublic static java.lang.String toJsonStr(java.lang.Object obj)
obj - 被转为JSON的对象public static java.lang.String toJsonPrettyStr(java.lang.Object obj)
obj - Bean对象public static java.lang.String toXmlStr(JSON json)
json - JSONpublic static <T> T toBean(java.lang.String jsonString,
java.lang.Class<T> beanClass)
T - Bean类型jsonString - JSON字符串beanClass - 实体类对象public static <T> T toBean(JSONObject json, java.lang.Class<T> beanClass)
T - Bean类型json - JSONObjectbeanClass - 实体类对象public static <T> T toBean(JSONObject json, java.lang.Class<T> beanClass, boolean ignoreError)
T - Bean类型json - JSONObjectbeanClass - 实体类对象ignoreError - 是否忽略转换过程中某个字段的转换异常public static <T> java.util.List<T> toList(JSONArray jsonArray, java.lang.Class<T> elementType)
jsonArray - JSONArrayelementType - List中元素类型@Deprecated public static java.lang.Object getByExp(JSON json, java.lang.String expression)
getByPath(JSON, String)persion persion.name persons[3] person.friends[5].name
json - JSONexpression - 表达式JSON.getByExp(String)public static java.lang.Object getByPath(JSON json, java.lang.String expression)
persion persion.name persons[3] person.friends[5].name
json - JSONexpression - 表达式JSON.getByExp(String)public static void putByPath(JSON json, java.lang.String expression, java.lang.Object value)
persion persion.name persons[3] person.friends[5].name
json - JSON,可以为JSONObject或JSONArrayexpression - 表达式value - 值public static java.lang.String quote(java.lang.String string)
string - 字符串public static java.lang.String quote(java.lang.String string,
boolean isWrap)
string - 字符串isWrap - 是否使用双引号包装字符串public static java.io.Writer quote(java.lang.String str,
java.io.Writer writer)
throws java.io.IOException
str - 字符串writer - Writerjava.io.IOException - IO异常public static java.io.Writer quote(java.lang.String str,
java.io.Writer writer,
boolean isWrap)
throws java.io.IOException
str - 字符串writer - WriterisWrap - 是否使用双引号包装字符串java.io.IOException - IO异常public static java.lang.String escape(java.lang.String str)
str - 字符串public static java.lang.Object wrap(java.lang.Object object,
boolean ignoreNullValue)
null =》 JSONNull.NULLnullobject - 被包装的对象ignoreNullValue - 是否忽略null 值public static java.lang.String formatJsonStr(java.lang.String jsonStr)
jsonStr - JSON字符串public static boolean isJson(java.lang.String str)
str - 字符串public static boolean isJsonObj(java.lang.String str)
str - 字符串public static boolean isJsonArray(java.lang.String str)
str - 字符串public static JSONObject xmlToJson(java.lang.String xml)
xml - XML字符串Copyright © 2018. All rights reserved.