import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
String xssJson = "{\"name\":\"\",\"age\":\"\"}";
Object object = JSON.parse(json);
if (object instanceof JSONObject) {
JSONObject jsonObject = (JSONObject) object;
log.info(" jsonObject:" + jsonObject.toJSONString());
} else if (object instanceof JSONArray) {
JSONArray jsonArray = (JSONArray) object;
log.info(" jsonArray:" + jsonArray.toJSONString());
java判断JSON字符串是JSONObject或JSONArrayimport com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject; String xssJson = "{\"name\":\"\",\"age\":\"\"}"; Object object = JSON.parse(json);
首先要分清楚 是 哪种格式 才能使用 那种进行解析
{"key": "value"} //JSONObject(对象)[{"key1": "value1"}, {"key2": "value2"}] //JSONArray(数组){}为对象,而 【{},{}】 为数据
2、遍历json数组
使用 JSONTokener。
JSONTokener.nextValue() 会给出一个对象,然后可以动态的转换为适当的类型。String jsonStr = "...."; //json字符串
Object json = new JSONTokener(jsonStr).nextValue();
if(json instanceof JSONObject){
JSONObject j
需要导入:json-lib-2.2.2-.jar包
1.json:就是一个键对应一个值,超级简单的一对一关系。对于json嵌套,只要记住符号“:”前是键,符号后是值大括号成对找.
String arrayStr=[{name1:{name2:{name3:’value1′,name4:’value2′}}},{}]
取出name4值过程步骤:
1)将以上字符串转换为JSONArray对象;
2)取出对象的第一项,JSONObject对象;
3)取出name1的值JSONObject对象;
4)取出name2的值JSONObject对象;
5)取出name4的值value
net.sf.json.JSONObject可以处理简单java对象和格式正确的json字符串互相转换。
net.sf.json.JSONArray可以处理复杂的java集合对象和格式正确的json字符串互相转换.
1.json字符串转简单java对象
2.简单java对象转json字符串
3.json字符串转集合对象
4.集合对象转json字符串
jsonObject.getString()解析任意字段均可强转为string
json解析时自动判断是object还是array解析json时遇到的问题,返回的json内容中可能为jsonArray,也可能是jsonObject,当只有一个信息时是jsonObject,有多个信息时是jsonArray,如果去修改json的返回格式有些不现实。通过字符判断的话又很麻烦。
{“scm”:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>...
public static void main(String[] args) {
String dataStr = "['ces':'dd']";
if (dataStr.startsWith("[") && dataStr.endsWith("]")) {
System.out.println("我是jsonArray");
} else {
JSON字符串转JSONArray可以通过Java中的JSONObject和JSONArray类来实现。首先,我们需要将JSON字符串转换为JSONObject对象,然后使用getJSONArray方法获取JSONArray对象。
例如,假设我们有一个JSON字符串如下:
"students": [
{"name": "Tom", "age": 18},
{"name": "Jerry", "age": 20},
{"name": "Mary", "age": 19}
我们可以使用以下代码将其转换为JSONArray对象:
String jsonString = "{\"students\":[{\"name\":\"Tom\",\"age\":18},{\"name\":\"Jerry\",\"age\":20},{\"name\":\"Mary\",\"age\":19}]}";
JSONObject jsonObject = new JSONObject(jsonString);
JSONArray jsonArray = jsonObject.getJSONArray("students");
上述代码中,jsonString是我们需要转换的JSON字符串,使用JSONObject将其转换为JSONObject对象,然后调用getJSONArray方法获取其中的“students”数组,并将其转换为JSONArray对象。
在JSONArray对象中,可以使用length方法获取JSONArray的长度,使用get方法根据索引获取其中的元素。例如,我们可以使用以下代码遍历上述的JSONArray:
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject student = jsonArray.getJSONObject(i);
String name = student.getString("name");
int age = student.getInt("age");
System.out.println("Name: " + name + ", Age: " + age);
上述代码中,我们使用getJSONObject方法根据索引获取JSONArray中的JSONObject对象,并使用getString和getInt方法获取其中的数据。然后可以将这些数据用于后续的处理。
钓喵的鱼:
java实现导出excel三级联动+下拉框(poi)
echarts中清空图画
逐知逐行: