2017-08-10 3 views
-1

Ich kann den Name Wert (Nungam Hwy) extrahieren, aber ich bin nicht in der Lage, den Zeitwert (5:30 AM) einzeln zu erhalten.Wie wird der Wert des Schlüsselwertpaares mit org.json.simple.parser.JSONParser berechnet?

Mein Code:

Es folgt mein json, die ich aus meiner Datei lesen.

private void convertJsonToSql() { 
    JSONParser parser = new JSONParser(); 
    List<Time> times = new ArrayList<>(); 
    try { 

     Object obj = parser.parse(new FileReader("/home/bus/route125SaturdaySouthbound")); 
     JSONArray jsonArray = (JSONArray) obj; 
     for (int i = 0; i < jsonArray.size(); i++) { 
      JSONObject jsonObj = (JSONObject) jsonArray.get(i); 
      String stopName = (String) jsonObj.get("Name"); 
      times = (List) jsonObj.get("Times"); 
      System.out.println("Stop name " + stopName); 
      for (int j = 0; j < times.size(); j++) { 
       System.out.println("Time" + times.get(j)); 
      } 
     } 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

[ 
    { 
     "StopId":0, 
     "Name":"Nungam Hwy", 
     "Times":[ 
     { 
      "Time":" 5:30AM", 
      "RouteNumber":"12" 
     }, 
     { 
      "Time":" 6:16AM", 
      "RouteNumber":"12" 
     } 
} 
] 

Bitte mir jemand helfen ...

Antwort

0

mit JSON-einfach sollte folgende Arbeiten:

JSONArray array = (JSONArray) config.get("Times"); 
Iterator<JSONObject> iterator = array.iterator(); 
while(iterator.hasNext()){ 
    JSONObject element = (JSONObject) iterator.next(); 
    System.out.println("Time " + element.get("Time"));  
} 
Verwandte Themen