`
ruilin215
  • 浏览: 1103945 次
  • 性别: Icon_minigender_2
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

自己编写程序批量合并多个“规范定义电子名片(vCard)”文件

阅读更多

  上个周末遇到一个小问题,我希望把手机上的通讯录/联系人名单,从运行Windows CE 6.0系统的M8手机,转移到运行Google Android 2.2系统的M8手机上。对比了几套方法,感觉这个比较简单而且靠谱:先在PC上把通讯录导入Google Accounts,然后再同步到Android系统手机中。

  在运行Windows CE 6.0系统的M8手机中生成的是许多个vCard文件(*.vcf)(具体生成方法见文末),每个联系人单独一个文件。而Google Accounts只允许一次导入一个vCard文件,完全手工操作的话,几百个vCard文件要累死人不偿命的。嗨嗨,很明确的需求来了:把指定目录下的所有vCard文件(*.vcf),合并成一个vCard文件。

  先看看单个联系人的vCard(.vcf)内容:

  再看看多个联系人共用一个vCard(.vcf)的情况:

  可见,多个联系人共用一个vCard(.vcf),其文件内容是单人vCard(.vcf)文件内容的叠加(间隔以空行)。用程序实现起来非常之简单:枚举指定目录下的所有vCard(.vcf)文件,读取其内容,转换为文本叠加到一起,最后把合并后的内容写出到一个vCard(.vcf)文件即可。太简单了,我(liigo)用易语言,没两分钟就写完了:

易语言代码,把多个vCard(.vcf)文件合并为一个vCard(.vcf)文件

  运行以上代码,就会在D盘根目录下生成合并后的vCard(.vcf)文件,将其往Google Accounts里面导入,很顺利地完成了,检查导入后的数据无误,证明vCard合并结果是正确的。

  程序源代码中,为什么把文件路径(“C:\Documents ...”,“d:\myVCards.vcf”)硬编码进去?呵呵,这可不是一个通用的程序,这是运行一次完成任务之后就要丢弃的代码。这种生存周期不足三分钟的程序源代码,弃之毫不足惜;如果将来又遇到类似的功能,随手再写一遍,也要快于从Windows文件管理器中翻出以前写好的旧代码。

  一个插曲,代码中用到了我多年前开发的一个易语言支持库,辅助调试支持库,想起来该库还不支持易语言5.x静态编译,于是升级之,支持静态编译,并更名为“枚举文件子目录支持库”(已开源)。

  小程序,也能帮大忙。


附:运行Windows CE 6.0系统的M8手机中生成vCard文件的方法:进入通讯录,点击任意联系人,用蓝牙发送,确定后即可在设备根目录(非Disk根目录)下tmpvcard子目录中看到临时自动生成的vCard文件(.vcf),每个联系人各自对应一个vCard文件。我(liigo)建议操作前清空tmpvcard目录,因为先前生成的vCard文件不会被自动删除。另参见此帖:http://bbs.meizu.com/viewthread.php?tid=1978771

分享到:
评论
1 楼 GeneralSnow 2011-12-31  
没有有一个共用的模板

相关推荐

    教你如何制作电子名片vcard归纳.pdf

    教你如何制作电子名片vcard归纳.pdf

    VCard实现电子名片保存通讯录.zip

    利用vCard实现电子名片中的二维码保存个人信息到通讯录,相关文档参考https://blog.csdn.net/super_DuoLa/article/details/116713322

    Vcard(vcf)文件生成器 v6.5.zip

    5、多个vcf文件时,以自定义长度的数字作为名称,定义方法在选项 6、通过选项功能可以设置是否“自动检查更新”,是否打开下方的提示信息窗口(此项仅注册版有效)。 Vcard(vcf)文件生成器截图

    vcard批量导入 abcvcard

    vcard批量导入, 可以同时导出多种格式xls txt csv 等文件

    Vcard 文档

    规范定义电子名片(或叫vCard)的格式。  vCard 规范可作为各种应用或系统之间的交换格式。定义的格式与传送的方法无关。传送交换可能是文件系统,点对点交换的公共电话网络,以有线网络或无线传送的方式。用户...

    vcard2.1规范说明书

    This specification defines a format for an electronic business card, or vCard. The format is suitable as an interchange format between applications or systems. The format is defined independent of the...

    VCard名片批量整理成excel小工具

    VCard名片批量整理成excel小工具。 名片输出来之后是一堆vcf文件(vcard),不好整理不好保存,想把它们批量弄成一个excel文件,也没找到合适的工具,于是自己写了个。 带着代码、带着exe、例子

    小米XML文件转Vcard.zip

    小米XML文件转Vcard.zip

    Android vCard文件操作总结

    本文首先简单介绍了vCard,然后分析了导入和导出VCard文件,最后提及了 了Android vCard电子名片。

    ez-vcard, 用于Java的vCard分析程序库.zip

    ez-vcard, 用于Java的vCard分析程序库 位 vcard持续集成: 代码覆盖率: Maven 中心: 聊天室: 许可证: ez vCard是用Java编写的vCard库。 它可以以多种格式读取和写入 vcard 。 因为

    vcard文件转换-完美支持NOKIA手机

    可以将csv转成单个vcard文件,一次导入控制列。

    android vcard文件导入导出jar

    网上找的 一个jar包 可用来导入导出 .vcf文件 里面调用方法

    vCard21Tool 源代码

    C#写的vcard转换器,能够从text 或者 cvs 文件批量生成vcard文件,从而不需要手工一个一个录入通讯录。 需要的话,可以增加其他的输入信息,或者解析vcard文件生成text文件或者excel文件。

    Vcard2.1&3.0

    Vcard2.1&3.0Vcard2.1&3.0Vcard2.1&3.0Vcard2.1&3.0Vcard2.1&3.0

    Python实现vCard3.0转vCard2.1

    将手机联系人备份从vCard3.0文件转为vCard2.1文件(旧式手机需要) 。 在Python3.7下可运行,不支持头像转换。

    vCard_src.zip

    VCARD解析。可以用于手机发送联系人功能的VCARD解析。

    python2 7 二维码名片生成器 VCard格式

    可以生成二维码名片,格式是VCard,运用了Qt库和qrcode库。

    excel电话本转vCard工具简单好用

    用csv2vCard.cmd导出的vcf文件不是utf8编码的,需要转换文件编码为utf8, 这个方式很多,网上查下就知道(windows记事本转换不行),我用的是vim 压缩包里有个lp.csv文件,用excel打开后可以按照格式添加联系人,...

    VCard实现电子二维码.zip

    VCard实现电子二维码完整版项目,相关功能可参考https://blog.csdn.net/super_DuoLa/article/details/116697473

Global site tag (gtag.js) - Google Analytics