我有從本地 JSON 檔案回傳的資料陣列,我需要根據專案的特定值過濾資料。
Data sample
[
{
"verse": ".........",
"topic": "A"
},
{
"verse": ".........",
"topic": "A"
},
{
"verse": ".........",
"topic": "A"
},
{
"verse": ".........",
"topic": "A"
},
{
"verse": ".........",
"topic": "B"
},
{
"verse": ".........",
"topic": "B"
},
..........
]
例如,在這里我只想獲取帶有主題的資料A。
Code
readDataBaseData() async {
String data =
await DefaultAssetBundle.of(context).loadString("assets/db/my_file.json");
final jsonResult = jsonDecode(data);
List items = jsonResult['ID'];
// need that filter here (before return).
return items; // currently returns sample data above
}
想法?
uj5u.com熱心網友回復:
你必須遍歷你的串列,一個單行洗掉主題不等于的所有條目A將是:
items.removeWhere((item) => item["topic"] != "A");
您還可以使用retainWhere:
items.retainWhere((item) => item["topic"] == "A");
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/439310.html
下一篇:如何將json串列轉換為資料框?
