2015-09-01 61 views
0

我用GSON庫讀取json文件。 我使用下面的代碼:如何閱讀與Gson沒有價值的JSON?

Gson gson = new GsonBuilder().setPrettyPrinting().create(); 
JsonParser jp = new JsonParser(); 
JsonElement je = jp.parse(uglyJSONString); 
String prettyJsonString = gson.toJson(je); 

一切工作正常,如果我的JSON有所有的值,但如果有一些值在JSON丟失,如下面的JSON,我得到一個異常。

com.google.gson.stream.MalformedJsonException: 
Expected value at line 1 column 217 path $.repeatInterval 

{ 
    "key1": "a", 
    "key2": "", 
    "key3": 
} 

如何在使用GSON庫時讀取缺少值的json文件?編號: 解決方案無一例外。添加「KEY3:」」

{ 
    "key1": "a", 
    "key2": "", 
    "key3": "" 
} 

回答

1

你JSON是無效的,因爲你可以在這個網站上,例如看:http://jsonlint.com/據我所知,GSON將始終無效JSON拋出異常,那是預期的行爲 。如果你可以創建這個JSON,至少要設置「」而不是空值來符合JSON格式。

+0

謝謝。我的問題是,key3應該是一個缺少的整數值。添加「key3」: 「」它會起作用。 – Gero