在不知道真实名称的情况下获取 JSON 字段名称



我有一个 JSON 数组,我想根据 JSON 响应中唯一字段的数量动态创建一个List<String> jsonFieldName编号;例如说;

JSON = [{a:1,b:2,c:3},{a:4,b:5,c:5}];

结果:

temp_array=[{a,b,c}];

根据上面的 JSON 示例,我最终会得到 3 个新列表;列表:列表 A列表 B列表 C

我想像这样结束,因为我想创建一个通用的 JSON 响应解析器,其中每个响应的大小/长度可能不同。

如何在安卓中实现一个;

这是我解析 JSON 响应的现有方法

public void getJsonData(JSONArray ja) {
    try {
        // JSONArray jArray = new JSONArray(result);
        for (int i = 0; i < ja.length(); ++i) {
            JSONObject jo = ja.getJSONObject(i);
            Log.i("Connect->getJsonData", jo.getString("tableno"));
        }
    } catch (Exception e) {
        Log.e("ConnectToDatabase->getJsonData", "Error Parsing JSON Data "
                + e.toString());
    }
}

这是我所做的:

public void getJsonData(JSONArray ja) {
 **List<String> arrNames = new ArrayList<String>**;
 try {
    // JSONArray jArray = new JSONArray(result);
    for (int i = 0; i < ja.length(); ++i) {
        JSONObject jo = ja.getJSONObject(i);
        **arrNames[i] = jo.names(i);**
        Log.i("Connect->getJsonData", jo.getString("tableno"));
    }
 } catch (Exception e) {
    Log.e("ConnectToDatabase->getJsonData", "Error Parsing JSON Data "
            + e.toString());
 }
}

最新更新