标签:code ons depend 创建 程序 com his zab 根目录
打开 Intellij IDEA, 安装 Dart 插件
新建工程,选择 Dart -> Dart Command Line App, 输入 Dart SDK 路径,
然后点击 Next,输入工程名 example,完成向导。
在 pubspec.yaml 的 dependencies 部分添加依赖
dependencies:
json_annotation: ^3.0.0
analyzer: ‘0.39.14‘
点击文件上方的 Pub get 链接下载依赖
example.dart 代码如下
import ‘dart:convert‘;
import ‘package:json_annotation/json_annotation.dart‘;
part ‘example.g.dart‘;
@JsonSerializable()
class Persons {
List<Person> persons;
Persons() {}
factory Persons.fromJson(Map<String, dynamic> json) => _$PersonsFromJson(json);
Map<String, dynamic> toJson() => _$PersonsToJson(this);
@override
String toString() => "persons=$persons";
}
@JsonSerializable()
class Person {
@JsonKey(name: ‘name‘)
String name;
int age;
Person() {}
factory Person.fromJson(Map<String, dynamic> json) => _$PersonFromJson(json);
Map<String, dynamic> toJson() => _$PersonToJson(this);
@override
String toString() => "name=$name,age=$age";
}
void main() {
final jsonString = """
{
"persons" : [
{
"name" : "Joe",
"age" : 12
}
]
}
""";
final o = Persons.fromJson(jsonDecode(jsonString) as Map<String, dynamic>);
print(o);
final s = jsonEncode(o);
print(s);
final s2 = JsonEncoder.withIndent(" ").convert(o);
print(s2);
}
在工程根目录下执行以下命令
pub run build_runner build
该命令会生成 example.g.dart 文件
程序执行后的输出为
persons=[name=Joe,age=12]
{"persons":[{"name":"Joe","age":12}]}
{
"persons": [
{
"name": "Joe",
"age": 12
}
]
}
标签:code ons depend 创建 程序 com his zab 根目录
原文地址:https://www.cnblogs.com/zwvista/p/13672431.html