여러가지 데이터타입 존재
csv 사용하기 위해선 라이브러리 필요
https://pub.dev/packages/csv
String csvStr = 'hong, john, load';
properties 사용하기 위해선 라이브러리 필요
https://pub.dev/packages/properties
property type file read
https://pub.dev/packages/properties
const filePath = './';
Properties p = Properties.fromFile(filePath);
String? value = p.get('test.key.1');
final jsonDump = {
"name": "hong",
"age": 30,
"asdf": 10.3,
"email": "qwerasdf@naver.com"
};
클래스 내 직렬화 역직렬화는 toJson, fromJson 이 통상적인 룰
class UserDump {
final String name;
final String email;
UserDump(
this.name,
this.email,
);
// The initializer type 'Object?' can't be assigned to the field type 'String'
// Map<String, Object> => Map<String, dynamic>
UserDump.fromJson(Map<String, dynamic> json)
: name = json['name'],
email = json['email'];
Map<String, dynamic> toJson() => {
'name': name,
'email': email,
};
}
직렬화
final user01 = UserDump('hong', 'qwerasdf@naver.com');
final userJson = user01.toJson();
log.info(userJson);
//👻 INFO 2023-12-11 15:07:02.383 [caller info not available] {name: hong, email: qwerasdf@naver.com}
어떤 사유인지는 확실하지 않으나
The initializer type 'Object?' can't be assigned to the field type 'String'
json 선언시 Map<String, Object> 대신 Map<String, dynamic> 을 사용해야하는 것 같음
ref)
1. "properties | Dart Package", 23.12.11, https://pub.dev/packages/properties