往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)

✏️ 鸿蒙应用开发与鸿蒙系统开发哪个更有前景?

✏️ 嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~

✏️ 对于大前端开发来说,转鸿蒙开发究竟是福还是祸?

✏️ 鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?

✏️ 市场巨变,移动开发行业即将迎来“第二春”?

✏️ 记录一场鸿蒙开发岗位面试经历~

✏️ 持续更新中……


简介

VCard是电子名片的文件格式标准。它一般附加在电子邮件之后,但也可以用于其它场合(如在网际网路上相互交换)。 VCard可包含的信息有:姓名、地址资讯、电话号码、URL,logo,相片等。本库支持VCard标准2.0和3.0。

下载安装

ohpm install @ohos/vcard

使用说明

生成VCard

import {contact,VCardBuilder,VCardConfig} from "@ohos/vcard";

  let myCard= new  contact.Contact();
  let nickName = new contact.NickName();
  nickName.nickName ="昵称";
  myCard.nickName = nickName;
  let builder = new VCardBuilder(VCardConfig.VCARD_TYPE_V21_GENERIC,"UTF-8");
  builder.appendNickNames(myCard);
  let result = builder.toString();

解析VCard文本

import fileio from "@ohos.fileio";
import {VCardParserImpI_V20,VCardEntry,VCardInterpreter,VCardProperty} from "@ohos/vcard";

let vCardEntry = new VCardEntry()
class MyVCardInterpreter implements VCardInterpreter{
    onVCardStarted(): void {
    }
    onVCardEnded(): void {
    }
    onEntryStarted(): void {
    }
    onEntryEnded(): void {
    }
    onPropertyCreated(property: VCardProperty): void {
        vCardEntry.addProperty(property)
    }
}
let myParser = new VCardParserImpl_V20()
myParser.addInterpreter(new MyVCardInterpreter() )
let fileDescriptor = fileio.openSync("./pathTo/00002.vcf", 0o100|0o2,0o666)
myParser.parse(fileDescriptor)
vCardEntry.consolidateFields()
let displayName = vCardEntry.getDisplayName()
let emails= vCardEntry.getEmailList()

接口说明

let builder=new VCardBuilder(VCardConfig.VCARD_TYPE_V21_GENERIC,"UTF-8");

  1. 昵称 builder.appendNickNames()
  2. 名字 builder.appendNameProperties()
  3. 电话 builder.appendPhones()
  4. 电子邮件 builder.appendEmails()
  5. 地址 builder.appendPostals()
  6. 社交工具 builder.appendIms()
  7. 网站地址 builder.appendWebsites()
  8. 组织 builder.appendOrganizations()
  9. 照片地址 builder.appendPhotos()
  10. 备注 builder.appendNotes()
  11. 群组 builder.appendGroupMemberShip()
  12. 事件 builder.appendEvents()
  13. 关系 builder.appendRelation()

目录结构

|---- VCard  
|     |---- entry  # 示例代码文件夹
|     |---- library  # vcard库文件夹
|           |---- index.ets  # 对外接口
|     |---- README.MD  # 安装使用方法                    

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐