本文介紹了是否可以使用本地文件路徑或json字符串代替url?的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!
問題描述
您好,我正在開發(fā)一個(gè)使用retrofit
API從服務(wù)器獲取響應(yīng)的Android
應(yīng)用程序。Retrofit自動(dòng)解析json響應(yīng)并創(chuàng)建POJO
類的對(duì)象。我正在將json存儲(chǔ)到sqlite中,如果沒有連接到互聯(lián)網(wǎng),從sqlite調(diào)用json會(huì)遇到困難,必須手動(dòng)解析json。
有沒有辦法使用改良庫來解析json并從json字符串或文件路徑生成pojo?我的代碼是在這里從url:
獲取的
@FormUrlEncoded
@POST("getResponse")
Observable<UserResponse> getResponse(@Field("token") String token);
如果沒有連接互聯(lián)網(wǎng),我想要這樣的東西。
@FromStringEncoded
Observable<UserResponse> getResponseOffline(@Field("token") String token);
謝謝。
推薦答案
只需使用Google's GSON
庫,即可將json
轉(zhuǎn)換為POJO
,反之亦然。從sqlite
獲取json
并使用gson
對(duì)其進(jìn)行分析。
Gson gson=new Gson();
UserResponse userResponse= gson.fromJson(jsonInStringFromDb,UserResponse.class);
您還可以使用Gson
從文件分析JSON
。
JSON to Java對(duì)象,從文件中讀取。
Gson gson = new Gson();
Staff staff = gson.fromJson(new FileReader("D:\file.json"), Staff.class);
這篇關(guān)于是否可以使用本地文件路徑或json字符串代替url?的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,