Где найти библиотеку Java для чтения файлов vcard?

Мне нужна библиотека Java для чтения файлов vcard (vcf).

8 ответов

Решение

Поиск по Java и vcard дает довольно мало результатов.

В частности, есть Mime-Dir-j, который больше не находится в активной разработке, но может быть всем, что вам нужно, и vcard4j, который, кажется, бездействовал еще дольше (последний выпуск 2003!).

ez-vcard поддерживает версии 2.1, 3.0 и 4.0 стандарта vCard, а также vCards в кодировке XML (стандарт "xCard"), vCards в кодировке HTML (микроформат "hCard") и vCards в кодировке JSON ("jCard") стандарт).

https://github.com/mangstadt/ez-vcard

Чтобы прочитать файл vCard, используйте Ezvcard.parse() метод. Затем вызовите различные методы получения для возвращаемого VCard объект для извлечения полей данных vCard.

File file = new File("my-vcard.vcf");
VCard vcard = Ezvcard.parse(file).first();
System.out.println("Name: " + vcard.getFormattedName().getValue());
System.out.println("Email: " + vcard.getEmails().get(0).getValue());

Cardme, кажется, лучшая библиотека vcard с активной разработкой, и даже есть вики-сайт.

Проверьте домашнюю страницу проекта.

Еще не использовал (собираюсь попробовать), но это выглядит многообещающе.

http://code.google.com/p/android-vcard/

Я нашел этот API, который мог бы добиться цели: http://sourceforge.net/projects/mime-dir-j/

Попробуйте Google, Yahoo, что угодно и найдите http://vcard4j.sourceforge.net/

Ну, на всякий случай, если вы хотите использовать мобильный телефон, JSR75 делает это прямо из коробки:

javax.microedition.pim.PIM.fromSerialFormat указан как поддерживающий vCard 3.0

Другие вопросы по тегам