亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何從文件解析此 json

如何從文件解析此 json

尚方寶劍之說 2022-09-22 16:12:31
如何使用簡單Json庫解析這個json文件,格式是這樣的:謝謝我的文件看起來像這樣:里面有Json數組的json文件; {"data":[{"host":"hostname1","port":2049,"open":"false", "info":" "},   {"host":"hostname1","port":2049,"open":"false", "info":" "},  {"host":"hostname2","port":2049,"open":"false", "info":" "},  {"host":"hostname3","port":2049,"open":"false", "info":" "},  {"host":"hostname4","port":443,"open":"false", "info":" "},  {"host":"hostname5","port":443,"open":"false","info":" "},  {"host":"hostname6","port":61208,"open":"false","info":" "},  {"host":"hostname7","port":139,"open":"false","info":" "}]}  此時此刻我的代碼:JSONParser parser = new JSONParser();       try {           Object obj = parser.parse(new FileReader("D:/file.json"));           JSONArray jsonObject = (JSONArray) obj;           JSONObject arr = (JSONObject) jsonObject.get(0);           JSONArray arguments = (JSONArray) arr.get("arguments");           System.out.println("arguments>>>>>>>>> "+arguments);           for(int i = 0 ; i< arguments.size() ;i++){               JSONObject object = (JSONObject) arguments.get(i);               System.out.println(object);               return object;           }       } catch (Exception e) {           e.printStackTrace();       }     return null;我手動做了這個://data           JSONObject obj1 = new JSONObject();           obj1.put("host", "mkyong.com");           obj1.put("port", "555");           obj1.put("open", "false");           obj1.put("info", "");           JSONObject obj2 = new JSONObject();           obj2.put("host", "mkyong.com");           obj2.put("port", "555");           obj2.put("open", "false");           obj2.put("info", "");           JSONArray list = new JSONArray();           list.add(obj2);           JSONObject datajson = new JSONObject();           datajson.put("data", list);
查看完整描述

1 回答

?
波斯汪

TA貢獻1811條經驗 獲得超4個贊

它看起來像一個舊的谷歌圖書館。我認為您需要切換到 .下面是演示如何讀取給定 .這里的鍵是原始對象將對象數組作為鍵的值。JSON.simpleGSONJSONJSONJSONdata


import java.io.FileReader;

import java.util.Iterator;

import org.json.simple.JSONArray;

import org.json.simple.JSONObject;

import org.json.simple.parser.JSONParser;


/**

 *

 * @author blj0011

 */

public class JsonSimpleReaderExample

{

    public static void main(String[] args)

    {

        JSONParser parser = new JSONParser();


        try {

            Object obj = parser.parse(new FileReader("file.json"));

            JSONObject jsonObject = (JSONObject) obj;


            JSONArray array = (JSONArray) jsonObject.get("data");

            Iterator<JSONObject> iterator = array.iterator();

            while (iterator.hasNext()) {

                JSONObject jsonObjectInJsonArray = (JSONObject) iterator.next();

                System.out.println(jsonObjectInJsonArray.get("host"));

            }

        }

        catch (Exception ex) {

            System.out.println(ex.toString());

        }

    }

}

輸出:


hostname1

hostname1

hostname2

hostname3

hostname4

hostname5

hostname6

hostname7


查看完整回答
反對 回復 2022-09-22
  • 1 回答
  • 0 關注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號