{};
_data['font'] = font; // No need for 'this.' here
return _data;
String jsonStr = jsonEncode(motifsModelItem.toJson());
将JSON转换为对象
//将 JSON 字符串解析为 Map<String, dynamic>
Map<String, dynamic> json = jsonDecode(jsonStr);
motifsModelItem.value = MotifsModelItem.fromJson(json);
JSON转换为Map
要将JSON字符串转换为Dart的Map对象,您可以使用Flutter的内置
json
库。这个库提供了
jsonDecode()
函数,可以将JSON字符串解析为Dart的Map对象
import 'dart:convert';
String jsonString = '{"name": "John", "age": 30}';
Map<String, dynamic> userMap = jsonDecode(jsonString);
print(userMap); // 输出: {name: John, age: 30}
Map转换为JSON
要将Dart的Map对象转换为JSON字符串,您可以使用
jsonEncode()
函数
import 'dart:convert';
Map<String, dynamic> userMap = {'name': 'John', 'age': 30};
String jsonString = jsonEncode(userMap);
print(jsonString); // 输出: {"name":"John","age":30}
JSON转换为List
有时,API返回的JSON数据可能是一个包含多个对象的列表。您可以将这样的JSON数组转换为Dart的List对象
import 'dart:convert';
String jsonArrayString = '[{"name": "John", "age": 30}, {"name": "Alice", "age": 25}]';
List<dynamic> userList = jsonDecode(jsonArrayString);
print(userList); // 输出: [{name: John, age: 30}, {name: Alice, age: 25}]
List转换为JSON
将Dart的List对象转换为JSON字符串也是非常简单的,只需使用
jsonEncode()
函数。
import 'dart:convert';
List<Map<String, dynamic>> userList = [
{'name': 'John', 'age': 30},
{'name': 'Alice', 'age': 25}
String jsonArrayString = jsonEncode(userList);
print(jsonArrayString); // 输出: [{"name":"John","age":30},{"name":"Alice","age":25}]