0

假设我有一个 vCard 文本文件,我想获取此人的电话号码、电子邮件地址和全名。有什么简单的方法可以做到这一点,而无需使用扫描仪手动跳过文本或使用 bufferedReader 进行 readLine?

BEGIN:VCARD
VERSION:2.1
TEL;PREF;WORK;VOICE;ENCODING=QUOTED-PRINTABLE:(+64 9) 373-7599=20
N:Vaughan;Tim;;Dr;
FN:Dr Tim  Vaughan
ADR;WORK;;ENCODING=QUOTED-PRINTABLE:;Building 303S Room 367;;Auckland;;Private Bag 92019 Auckland;New Zealand
TITLE:Research Fellow
EMAIL;INTERNET:xxx@gmail.com
ORG:University of Auckland;Department of Computer Science
URL;WORK:
REV:2013-09-12T15:06:11Z
END:VCARD
4

1 回答 1

0

您可以使用像ez-vcard这样的外部库。然后访问下面的 as VCard 元素

FileInputStream fin = ...;
    Vcard contacts = Ezvcard.parse(fin).all();
    for(VCard myCard : contacts){
        System.out.println("Contact In the Phonebook \n" + "\t"
                + myCard.getFormattedName().getValue()
                + "\n\t" + myCard.getEmails().get(0).getValue()
                + "\n\t" + myCard.getTelephoneNumbers().get(0).getText());
    }
于 2015-06-04T04:15:36.027 回答