从JSONArray中删除对象

3

我有一个应用程序,从web服务获取API密钥和帐户名,我将存储这个API密钥和帐户名以便进一步使用(多个帐户和API密钥)。

由于只能在SharedPreferences中存储原始类型,所以我将JSONArray解析为字符串。在应用程序的另一部分中,用户必须能够从他的应用程序中删除一个帐户。因此,我检索字符串并将其解析回JSONArray。

如何从数组中删除JSONObject并保存它,以便我可以将其重新解析为字符串并再次保存它?

2个回答

6
你应该将它转换成ArrayList,删除对象并创建JsonArray。
ArrayList<String> list = new ArrayList<String>();
//First Position remove
list.remove(0);
JSONArray jsArray = new JSONArray(list);

2
remove() 方法的最小 SDK 版本为 19。 - Mightian

3

我使用:

public static JSONArray RemoveJSONArray( JSONArray jarray,int pos) {

JSONArray Njarray=new JSONArray();
try{
for(int i=0;i<jarray.length();i++){     
    if(i!=pos)
        Njarray.put(jarray.get(i));     
}
}catch (Exception e){e.printStackTrace();}
return Njarray;

}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接