
zikai.apijson.core.JSON Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of zikai-apijson Show documentation
Show all versions of zikai-apijson Show documentation
apijson的简化版本,升级fastjson到2.0
The newest version!
/*Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved.
This source code is licensed under the Apache License Version 2.0.*/
package zikai.apijson.core;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.alibaba.fastjson2.JSONWriter;
import java.util.List;
/**阿里FastJSON封装类 防止解析时异常
* @author Lemon
*/
public class JSON {
private static final String TAG = "JSON";
/**判断json格式是否正确
* @param s
* @return
*/
public static boolean isJsonCorrect(String s) {
//太长 Log.i(TAG, "isJsonCorrect <<<< " + s + " >>>>>>>");
if (s == null
// || s.equals("[]")
// || s.equals("{}")
|| s.equals("")
|| s.equals("[null]")
|| s.equals("{null}")
|| s.equals("null")) {
return false;
}
return true;
}
/**获取有效的json
* @param s
* @return
*/
public static String getCorrectJson(String s) {
return getCorrectJson(s, false);
}
/**获取有效的json
* @param s
* @param isArray
* @return
*/
public static String getCorrectJson(String s, boolean isArray) {
s = StringUtil.getTrimedString(s);
// if (isArray) {
// while (s.startsWith("\"")) {
// s = s.substring(1);
// }
// while (s.endsWith("\"")) {
// s = s.substring(0, s.length() - 1);
// }
// }
return s;//isJsonCorrect(s) ? s : null;
}
/**
* @param obj
* @return
*/
public static Object parse(Object obj) {
try {
return com.alibaba.fastjson2.JSON.parse(
obj instanceof String ? (String) obj : toJSONString(obj)
);
} catch (Exception e) {
Log.i(TAG, "parse catch \n" + e.getMessage());
}
return null;
}
/**obj转JSONObject
* @param obj
* @return
*/
public static JSONObject parseObject(Object obj) {
if (obj instanceof JSONObject) {
return (JSONObject) obj;
}
return parseObject(toJSONString(obj));
}
/**json转JSONObject
* @param json
* @return
*/
public static JSONObject parseObject(String json) {
return parseObject(json, JSONObject.class);
}
/**json转实体类
* @param json
* @param clazz
* @return
*/
public static T parseObject(String json, Class clazz) {
if (clazz == null) {
Log.e(TAG, "parseObject clazz == null >> return null;");
} else {
try {
return com.alibaba.fastjson2.JSON.parseObject(getCorrectJson(json), clazz);
} catch (Exception e) {
Log.i(TAG, "parseObject catch \n" + e.getMessage());
}
}
return null;
}
/**
* list转JSONArray
*/
public static JSONArray parseArray(List
© 2015 - 2025 Weber Informatics LLC | Privacy Policy