2015-02-10 84 views
0
{ 
    "employee": { 
     "name":  "sachin", 
     "salary":  56000,  
    }  
} 

這是我的json文件。 現在我只想讀它。如何讀取GWT中的Json文件?

當我寫最後一行時,它給我NullPointerException

JSONValue value = JSONParser.parseLenient(json); 
JSONObject employeeObject = value.isObject(); 
System.out.println(employeeObject.get("name").isString().stringValue()); 

回答

0

它應該是:

JSONValue value = JSONParser.parseStrict(json); 
JSONObject employeeObject = (JSONObject) value.isObject().get("employee"); 

目前你是不是評估對象的「員工」 - 你正在評估它有一個「僱員」對象作爲其唯一的孩子一個JSON對象。

+0

但是,當我寫this.it給我錯誤com.google.gwt.json.client.JSONException:解析JSON時出錯:SyntaxError:Unexpected token}。 JSONValue value = JSONParser.parseStrict(json); – bugfix 2015-02-10 06:14:43

+0

好的。我已經完成了它。但是你能否告訴我parseStrict和parseLenient方法之間的區別。 – bugfix 2015-02-10 06:20:09

+0

這是來自parseLenient的文檔:'評估可信的JSON字符串並返回其JSONValue表示。警告!該方法調用JavaScript eval()函數,該函數可以執行任意腳本。不要傳遞一個不可信的字符串到這個方法中.' – 2015-02-10 06:23:47