1. 程式人生 > >Android 中解析本地json資料

Android 中解析本地json資料

1.首先我們先建立一個放置json檔案的資料夾
這也就是一個assets的資料夾

2.在裡面直接建立file檔案


//直接寫出來的一個解析資料的方法
private List<JsonBean.DataBean> getSDJson() {

    try {
    	//從Assets中開啟自己要解析的資料,open後寫名字+字尾
        InputStream open = getActivity().getAssets().open("mmm.json");
        BufferedReader reader = new BufferedReader(new InputStreamReader(open));
        //用gson解析
        Gson gson = new Gson();
        JsonBean jsonBean = gson.fromJson(reader, JsonBean.class);
        List<JsonBean.DataBean> data = jsonBean.getData();
        return data;
    } catch (Exception e) {
        e.printStackTrace();
    }
    return data;
}

3.在建立這個方法的地方例項一下,就可以用解析出來的資料新增資料庫了。


List<JsonBean.DataBean> sdJson = getSDJson();
//遍歷
for (JsonBean.DataBean bean : sdJson) {
    ContentValues values = new ContentValues();
    values.put("name", bean.getTitle());
    values.put("img", bean.getThumbnail_pic_s());
    dao.insert("person", null, values);
    //新增
}
//查詢
Cursor cursor = dao.query("person", null, null, null, null, null, null);
data = new ArrayList<>();
if (cursor.moveToFirst()) {
    do {
        String name = cursor.getString(cursor.getColumnIndex("name"));
        String img = cursor.getString(cursor.getColumnIndex("img"));
        data.add(new JsonBean.DataBean(name, img));
    } while (cursor.moveToNext());
}
cursor.close();
//關閉遊標