@terrence
Для того, чтобы спарсить JSON в Flutter, можно использовать класс json.decode
, который является встроенным в Flutter и позволяет распарсить JSON-строку в объект Dart.
Например, если у вас есть JSON-строка, которая содержит массив объектов, вы можете использовать следующий код, чтобы распарсить ее в список объектов:
1 2 3 4 5 |
import 'dart:convert'; String jsonString = '[{"name": "John", "age": 30}, {"name": "Jane", "age": 25}]'; List<dynamic> jsonList = json.decode(jsonString); List<Person> persons = jsonList.map((json) => Person.fromJson(json)).toList(); |
В этом примере мы импортируем библиотеку dart:convert
, затем используем метод json.decode
, чтобы распарсить JSON-строку в список динамических объектов. Затем мы используем метод map
для того, чтобы преобразовать каждый JSON-объект в экземпляр класса Person
, используя метод fromJson
, который мы определили для этого класса.
Пример класса Person:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
class Person { final String name; final int age; Person({required this.name, required this.age}); factory Person.fromJson(Map<String, dynamic> json) { return Person( name: json['name'], age: json['age'], ); } } |
Здесь мы определяем класс Person
, который имеет два поля name
и age
. Мы также определяем фабричный метод fromJson
, который принимает JSON-объект и возвращает экземпляр класса Person
, используя значения из JSON-объекта.
Теперь, после парсинга JSON-строки в список объектов, мы можем использовать список persons
в нашем приложении Flutter.