1. 程式人生 > >json字串資料轉成json物件取值方式

json字串資料轉成json物件取值方式

import com.alibaba.fastjson.JSON;  
import com.alibaba.fastjson.JSONArray;  
import com.alibaba.fastjson.JSONObject;  
import io.swagger.models.auth.In;  
import java.io.IOException;  
import java.security.KeyManagementException;  
import java.security.NoSuchAlgorithmException;  
import java.util.Iterator;  
  
/** 
 * Created by Administrator on 2017/4/21. 
 */  
public class test {  
  
    public static void main(String[] args) throws Exception {  
         
       //第一種格式  
       /** 
        * [ 
            { 
                "data ": [ 
                    { 
                        "building_id ": "*** ", 
                        "building_num ": "** ", 
                        "door_name ": "** ", 
                        "electric ": "** ", 
                        "room_name ": "** " 
                    } 
                ], 
                "success ": true 
                } 
            ] 
        */  
        String s="[{\"success\":true,\"data\":[{\"building_id\":\"***\",\"building_num\":\"**\",\"room_name\":\"**\",\"door_name\":\"**\",\"electric\":\"**\"}]}]" ;  
        String b= s.substring(0,s.length()-1);  
        String c=b.substring(1, b.length());  
        System.out.println(b+"b___");  
        JSONObject jsonx = JSON.parseObject(c);  
        JSONArray ja = jsonx.getJSONArray("data");  
        for (int i = 0; i < ja.size(); i++) {  
            JSONObject jo = ja.getJSONObject(i);  
            String building_id = jo.getString("building_id");  
            System.out.println(building_id+"building_id>>>>>");  
        }  
  
       //第二種格式  
       /** 
         * [ 
                { 
                    "password ": "*1234567890 ", 
                    "success ": "true " 
                } 
            ] 
         */  
        String s="[{\"success\":\"true\",\"password\":\"*1234567890\"}]";  
        String b= s.substring(0,s.length()-1);  
        String c=b.substring(1, b.length());  
        System.out.println(c+"c___");  
        JSONObject reagobj = JSONObject.fromObject(c);  
        String name = reagobj.getString("password");  
        System.out.println(name+"name,,,,,,");  
        String password = jm.getString("password");  
        System.out.println(password);  
        System.out.println("看看有沒有值"+password);     
  
         
        //第三種格式  
        /** 
        * { 
            "data ": { 
                "access_token ": "5a7040ccf66bafd06acd39b6f61c19230eaba426755509646d6da23ddd9fb206 ", 
                "expires_second ": 36000 
            }, 
            "rlt_code ": "HH0000 ", 
            "rlt_msg ": "成功 " 
        } 
         */  
        String res="{\"data\":{\"access_token\":\"5a7040ccf66bafd06acd39b6f61c19230eaba426755509646d6da23ddd9fb206\",\"expires_second\":36000},\"rlt_code\":\"HH0000\",\"rlt_msg\":\"成功\"}";  
        JSONObject jsonObject= JSON.parseObject(res);  
        String data = jsonObject.getString("data");  
        JSONObject jsondata= JSON.parseObject(data);  
        String token = jsondata.getString("access_token");  
  
          
        //第四種格式  
         /** 
         * {  
            "data ": 
                {  
                    "total ":23,  
                    "start ":0,  
                    "total_page ":3,  
                    "rows ": 
                        [ 
                            { "op_way ": "3 ", "user_mobile ": "15321918571 ", "op_time ":1493881391976, "pwd_no ":30}, 
                            { "op_way ": "1 ", "op_time ":1493880995000, "pwd_no ":31} 
                        ],  
                    "current_page ":1,  
                    "page_size ":10 
                },  
            "rlt_code ": "HH0000 ", 
            "rlt_msg ": "成功 " 
        } 
        */  
        String res="{\"data\":{\"total\":23,\"start\":0,\"total_page\":3,\"rows\":[{\"op_way\":\"1\",\"op_time\":1493884964000,\"pwd_no\":31},{\"op_way\":\"3\",\"user_mobile\":\"18518517491\",\"op_time\":1493884615032,\"pwd_no\":30},{\"op_way\":\"3\",\"user_mobile\":\"18518517491\",\"op_time\":1493883836552,\"pwd_no\":30},{\"op_way\":\"1\",\"op_time\":1493883294000,\"pwd_no\":31},{\"op_way\":\"1\",\"op_time\":1493883256000,\"pwd_no\":31},{\"op_way\":\"3\",\"user_mobile\":\"15321918571\",\"op_time\":1493883015371,\"pwd_no\":30},{\"op_way\":\"1\",\"op_time\":1493882007000,\"pwd_no\":31},{\"op_way\":\"3\",\"user_mobile\":\"15321918571\",\"op_time\":1493881498520,\"pwd_no\":30},{\"op_way\":\"3\",\"user_mobile\":\"15321918571\",\"op_time\":1493881391976,\"pwd_no\":30},{\"op_way\":\"1\",\"op_time\":1493880995000,\"pwd_no\":31}],\"current_page\":1,\"page_size\":10},\"rlt_code\":\"HH0000\",\"rlt_msg\":\"成功\"}";  
        JSONObject jsonObject= JSON.parseObject(res);  
        String data = jsonObject.getString("data");  
        JSONObject jsonObjects= JSON.parseObject(data);  
        JSONArray ja = jsonObjects.getJSONArray("rows");  
        for (int i = 0; i < ja.size(); i++) {  
            JSONObject jo = ja.getJSONObject(i);  
            String op_way = jo.getString("op_way");  
            String op_time = jo.getString("op_time");  
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
            long lt = new Long(op_time);  
            Date date = new Date(lt);  
            res = simpleDateFormat.format(date);  
            String pwd_no = jo.getString("pwd_no");  
            String user_mobile = jo.getString("user_mobile");  
            System.out.println(op_way+res+pwd_no+user_mobile+"------------");  
        }  
  
//第五種  陣列字串轉集合  String a = "[41,42]";

		String a = "[41,24]";
		String substring = a.substring(1, a.length()-1);
		String[] split = substring.split(",");
		List<String> asList = Arrays.asList(split);
		List<Integer> list = new ArrayList<>();
		for(String str:asList) {
			list.add(Integer.valueOf(str));
		}
		System.out.println(list);
       
      
    }  
  
    }