Java讀寫geojson


/** 讀 **/
public Map<Integer, SiteEntity> getSiteMap() {
        Map<Integer, SiteEntity> map = new HashMap<Integer, SiteEntity>();
        URL dataUrl = this.getClass().getClassLoader().getResource("public\\station.json");  //  259
        try{
            BufferedReader br =new BufferedReader(new FileReader(new File(dataUrl.toURI())));
            String s = null;
            while((s = br.readLine()) != null){  // s 為原生的json串
//                System.out.println("00=="+s);
                JSONObject jo = new JSONObject(s); // 創建一個包含原始json串的json對象
                JSONArray features = jo.getJSONArray("features"); //找到features的json數組
                for (int i = 0; i < features.length(); i++) {
                    SiteEntity siteEntity = new SiteEntity();
                    JSONObject info = features.getJSONObject(i); // 獲得features的第i個對象

                    JSONObject geometry = info.getJSONObject("geometry");
                    JSONObject properties = info.getJSONObject("properties");

                    siteEntity.setSite_stano(properties.getString("stano"));  // 獲得站名

                    List list  = geometry.getJSONArray("coordinates").toList();  // 獲得經緯度
                    siteEntity.setSite_longitude(Double.parseDouble(list.get(0).toString()));
                    siteEntity.setSite_latitude(Double.parseDouble(list.get(1).toString()));
//                    System.out.println(siteEntity.getSite_longitude()+"\n"+siteEntity.getSite_latitude());
                    map.put(i,siteEntity);
                }
            }
        }catch (Exception e){
            e.printStackTrace();
        }
        return map;
    }


/**寫**/
public void jsonOutPut(Map map) {
        ObjectMapper mapper = new ObjectMapper();
        try{
            mapper.writeValue(new File("D:/river-site.json"), map);
        }catch (Exception e){
            e.printStackTrace();
        }
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM