解析json数据,list转jsonObject再转为string类型

1.数据嵌套层级比较深,包含list集合

/**
 * Wrap an object, if necessary. If the object is null, return the NULL
 * object. If it is an array or collection, wrap it in a JSONArray. If it is
 * a map, wrap it in a JSONObject. If it is a standard property (Double,
 * String, et al) then it is already wrapped. Otherwise, if it comes from
 * one of the java packages, turn it into a string. And if it doesn't, try
 * to wrap it in a JSONObject. If the wrapping fails, then null is returned.
 *
 * @param object
 *            The object to wrap
 * @return The wrapped value
 */
public static Object wrap(Object object) {
    try {
        if (object == null) {
            return NULL;
        }
        if (object instanceof JSONObject || object instanceof JSONArray
                || NULL.equals(object) || object instanceof JSONString
                || object instanceof Byte || object instanceof Character
                || object instanceof Short || object instanceof Integer
                || object instanceof Long || object instanceof Boolean
                || object instanceof Float || object instanceof Double
                || object instanceof String || object instanceof BigInteger
                || object instanceof BigDecimal) {
            return object;
        }

        if (object instanceof Collection) {
            Collection<?> coll = (Collection<?>) object;
            return new JSONArray(coll);
        }
        if (object.getClass().isArray()) {
            return new JSONArray(object);
        }
        if (object instanceof Map) {
            Map<?, ?> map = (Map<?, ?>) object;
            return new JSONObject(map);
        }
        Package objectPackage = object.getClass().getPackage();
        String objectPackageName = objectPackage != null ? objectPackage
                .getName() : "";
        if (objectPackageName.startsWith("java.")
                || objectPackageName.startsWith("javax.")
                || object.getClass().getClassLoader() == null) {
            return object.toString();
        }
        return new JSONObject(object);
    } catch (Exception exception) {
        return null;
    }
}
这里主要用到wrap方法,实现如上:
在把list转换为对应的jsonObject后再转换为string的方法就是valueToString了
org.json.JSONObject.valueToString(org.json.JSONObject.wrap(team.getTdmxList()));
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值