Android Json(2) -- Json 讀取assets json文件

1. 封裝的工具類JsonGetUtils

package com.mytest.util;

import android.content.Context;
import android.content.res.AssetManager;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class JsonGetUtils {

    /**
     * 讀取assets本地json
     * @param fileName
     * @param context
     * @return
     */
    public static String getJson(String fileName, Context context) {
        //將json數據變成字符串
        StringBuilder stringBuilder = new StringBuilder();
        try {
            //獲取assets資源管理器
            AssetManager assetManager = context.getAssets();
            //通過管理器打開文件並讀取
            BufferedReader bf = new BufferedReader(new InputStreamReader(
                    assetManager.open(fileName)));
            String line;
            while ((line = bf.readLine()) != null) {
                stringBuilder.append(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        return stringBuilder.toString();
    }

}

2. 判斷是否是json文件

string應該1(getJson)中的返回值

public static boolean isJson(String content){
    if (TextUtils.isEmpty(content)){
        return false;
    }
    try {
        Gson gson = new Gson();
        gson.fromJson(content, JsonObject.class);
        return true;
    }catch (Exception e){
        return false;
    }
}

3. 解析使用

String jsonString = JsonGetUtils.getJson("testjson.json",context);
Gson mGson = new Gson();
<T> T = mGson.fromJson(jsonString,  classOfT);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章