问题描述
因此,我正在尝试使Flutter应用程序显示从电子名片中提取的联系信息。但是我在如何过滤掉名字,姓氏,电话号码等数据时遇到了麻烦。这就是提取的vcard数据的样子
I/Flutter (11933): BEGIN:VCARD
I/Flutter (11933): VERSION:3.0
I/Flutter (11933): FN;CHARSET=UTF-8:FirstName MiddleName LastName
I/Flutter (11933): N;CHARSET=UTF-8:LastName;FirstName;MiddleName;;
I/Flutter (11933): NICKNAME;CHARSET=UTF-8:
I/Flutter (11933): BDAY:20201011
I/Flutter (11933): TEL;TYPE=WORK,VOICE:Work Phone Number
I/Flutter (11933): ORG;CHARSET=UTF-8:ActivSpaces Labs
I/Flutter (11933): URL;CHARSET=UTF-8:https://github.com/valerycolong
I/Flutter (11933): NOTE;CHARSET=UTF-8:Notes on contact
I/Flutter (11933): REV:2020-10-11T15:35:06.168221
I/Flutter (11933): END:VCARD
有人可以帮我吗?我尝试使用vcard_parser插件,由于我是新手,它的输出也让我很困惑
I/Flutter (11933): {BEGIN: VCARD,VERSION: 3.0,FN;CHARSET=UTF-8: {name: UTF-8,value: FirstName MiddleName LastName},N;CHARSET=UTF-8: {name: UTF-8,value: LastName},NICKNAME;CHARSET=UTF-8: {name: UTF-8,value: },BDAY: 20201011,TEL;TYPE=WORK,VOICE: {name: WORK,VOICE,value: Work Phone Number},ORG;CHARSET=UTF-8: {name: UTF-8,value: ActivSpaces Labs},NOTE;CHARSET=UTF-8: {name: UTF-8,value: Notes on contact},END: VCARD}
感谢您的帮助!
解决方法
尝试Simple Vcard Parser。 这是用于从VCard提取数据的flutter程序包。
更新您的 pubspec.yaml
dependencies:
...
simple_vcard_parser: ^0.1.3
用法:
import 'package:simple_vcard_parser/simple_vcard_parser.dart';
VCard vc = VCard(myVCard);
print(vc.version);
print(vc.formattedName);
print(vc.organisation);
print(vc.title);
print(vc.email);
print(vc.typedTelephone);
print(vc.name);