我的杰森
[{"id":"2911","nama":"Abcd1","url":"myUrl"},{"id":"2910","nama":"Abcd2","url":"myUrl"},{"id":"2911","nama":"Abcd3","url":"myUrl"},{"id":"2549","nama":"Abcd4","url":"myUrl"}]
我的代碼嘗試
var fromCache2 = '''$fromCache1''';
List dataList = [];
final jsonData = json.decode(fromCache2);
print('Last Json : ' jsonData.toString());
jsonData.forEach((element) {
print('element ' element['id'].toString());
dataList.removeWhere((e) => element['id'] == id);
dataList.add(element);
});
print('New Data : ' dataList.toString());
我想洗掉“id”:“2910”的資料,但是
uj5u.com熱心網友回復:
removeWhere應該作業,例如:
void main() {
var jsonData = [
{"id": "2911", "nama": "Abcd1", "url": "myUrl"},
{"id": "2910", "nama": "Abcd2", "url": "myUrl"},
{"id": "2911", "nama": "Abcd3", "url": "myUrl"},
{"id": "2549", "nama": "Abcd4", "url": "myUrl"}
];
jsonData.removeWhere((element) => element["id"] == "2911");
print(jsonData);
}
在您的代碼中,它應該如下所示:
final jsonData = json.decode(fromCache2);
jsonData.removeWhere((element) => element['id'] == id);
無需使用臨時 dataList 變數。
uj5u.com熱心網友回復:
你可以where用來過濾你的jsonData:
const jsonData = [
{ "id": "2909", "nama": "Abcd1", "url": "myUrl" },
{ "id": "2910", "nama": "Abcd2", "url": "myUrl" },
{ "id": "2911", "nama": "Abcd3", "url": "myUrl" },
];
void main() {
print(jsonData.where((row) => row['id'] != '2910').toList());
}
控制臺日志
[{id: 2909, nama: Abcd1, url: myUrl}, {id: 2911, nama: Abcd3, url: myUrl}]
uj5u.com熱心網友回復:
首先,您從 List 或 JsonData 獲取索引。然后你可以讀取、洗掉或更新。
final index = jsonData.indexWhere((element) => element['id'] == '2549');
//洗掉索引資料
jsonData.removeAt(index);
// 更新索引資料
jsonData[index]['id'] = '2550';
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/433717.html
