void main() {
String json = "{\"eBooks\":[{\"language\":\"Pascal\",\"edition\":\"third\"},{\"language\":\"Python\",\"edition\":\"four\"},{\"language\":\"SQL\",\"edition\":\"second\"}]}";
JsonData result = JsonData.fromJson(jsonDecode(json));
List<String> targetList = [];
for(var book in result.eBooks!) {
targetList.add(book.language!);
}
print(targetList); // [Pascal, Python, SQL]
}
Json Object:
class JsonData {
List<EBooks>? _eBooks;
List<EBooks>? get eBooks => _eBooks;
JsonData({List<EBooks>? eBooks}) {
_eBooks = eBooks;
}
JsonData.fromJson(dynamic json) {
if (json["eBooks"] != null) {
_eBooks = [];
json["eBooks"].forEach((v) {
_eBooks?.add(EBooks.fromJson(v));
});
}
}
Map<String, dynamic> toJson() {
var map = <String, dynamic>{};
if (_eBooks != null) {
map["eBooks"] = _eBooks?.map((v) => v.toJson()).toList();
}
return map;
}
}
class EBooks {
String? _language;
String? _edition;
String? get language => _language;
String? get edition => _edition;
EBooks({String? language, String? edition}) {
_language = language;
_edition = edition;
}
EBooks.fromJson(dynamic json) {
_language = json["language"];
_edition = json["edition"];
}
Map<String, dynamic> toJson() {
var map = <String, dynamic>{};
map["language"] = _language;
map["edition"] = _edition;
return map;
}
}