如何从JSONArray中删除特定元素?

我正在构建一个应用程序,其中我从服务器请求一个PHP文件。此PHP文件返回一个以JSONObjects为元素的JSONArray,例如,

[ 

{

"uniqid":"h5Wtd",

"name":"Test_1",

"address":"tst",

"email":"ru_tst@tst.cc",

"mobile":"12345",

"city":"ind"

},

{...},

{...},

...

]

我的代码:

/* jArrayFavFans is the JSONArray i build from string i get from response.

its giving me correct JSONArray */

JSONArray jArrayFavFans=new JSONArray(serverRespons);

for (int j = 0; j < jArrayFavFans.length(); j++) {

try {

if (jArrayFavFans.getJSONObject(j).getString("uniqid").equals(id_fav_remov)) {

//jArrayFavFans.getJSONObject(j).remove(j); //$ I try this to remove element at the current index... But remove doesn't work here ???? $

//int index=jArrayFavFans.getInt(j);

Toast.makeText(getParent(), "Object to remove...!" + id_fav_remov, Toast.LENGTH_SHORT).show();

}

} catch (JSONException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

如何从此JSONArray删除特定元素?

回答:

试试这个代码

ArrayList<String> list = new ArrayList<String>();     

JSONArray jsonArray = (JSONArray)jsonObject;

int len = jsonArray.length();

if (jsonArray != null) {

for (int i=0;i<len;i++){

list.add(jsonArray.get(i).toString());

}

}

//Remove the element from arraylist

list.remove(position);

//Recreate JSON Array

JSONArray jsArray = new JSONArray(list);

使用ArrayList将添加"\"到键和值。所以,用JSONArray自己

JSONArray list = new JSONArray();     

JSONArray jsonArray = new JSONArray(jsonstring);

int len = jsonArray.length();

if (jsonArray != null) {

for (int i=0;i<len;i++)

{

//Excluding the item at position

if (i != position)

{

list.put(jsonArray.get(i));

}

}

}

以上是 如何从JSONArray中删除特定元素? 的全部内容, 来源链接: utcz.com/qa/434104.html

回到顶部