1. 程式人生 > 其它 >JSON常用方法

JSON常用方法

一. java

1.匯入包

com.alibaba.fastjson

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>fastjson</artifactId>
  <version>1.2.4</version>
</dependency>

net.sf.json

<dependency>
    <groupId>net.sf.json-lib</groupId>
    <artifactId
>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> //此處要加上jdk版本號 </dependency

注意JDK版本

2.常用方法

2.1 轉換

字串轉化為JSON物件

//字串轉化為物件
String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSON.parseObject(str2);

字串轉化為JSON陣列

fastjson

String str2 = "[{\"note\":\"1\"},{\"note\":\"2\"}]";
JSONArray jsonObject2 =JSONObject.parseArray(str2);

//獲取某一個KEY的值 並 轉化為陣列
//先轉化為json物件
String str=........;
JSONObject jsonOb=JSONObject.parseObject(a).getString("datagrid");
//物件當中獲取key對應的值
String str2=jsonOb.getString("key");
JSONArray jsonAr
=JSONObject.parseArray(str2);

net.sf.json

String data=.....;
JSONArray json = JSONArray.fromObject(data);

JSONObject轉化為字元

String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSONObject.parseObject(str2);
//兩種方法輸出結果一樣
System.out.println(jsonObject2.toJSONString());
System.out.println(jsonObject2.toString());

JSONObject轉化為指定的類

net.sf.json

 ClassName info = (ClassName ) JSONObject.toBean(JSONObject物件, ClassName .class);

2.2 JSON物件

替換JSON字串中的指定KEY的值

JSONObject arrayInfo = new JSONObject();
賦值...
//替換 color 的值
arrayInfo .put("color","blue");

刪掉JSON字串中的指定的KEY

String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSONObject.parseObject(str2);
jsonObject2.remove("success");
System.out.println(jsonObject2);

2.3 JSON陣列

獲取JSON物件中的JSON物件

JSONObject job = JSONArray物件.getJSONObject(i);

JSON數字新增JSON物件

String str2 = "{\"success\":\"true\",\"returnAddress\":\"123\", \"data\":{\"id\": 123}}";
JSONObject jsonObject2 = JSONObject.parseObject(str2);
JSONArray arrayInfo1 = new JSONArray();
arrayInfo1.add(jsonObject2 );

2.4 為空判斷

json物件==null || json物件.isEmpty()

  

二.js

刪除指定的KEY

delete json物件['keyname'];

delete json物件.keyname;