我正在尝试将.vcf
映射到我的DTO
(简单POJO),这是我尝试过的事情:
代码:
List<VCard> list = Ezvcard.parse(fr).all(); // fr is FileReader
SomeDto someDto = new SomeDto ();
List<SomeDto > someDtoList = new ArrayList<>();
for (Iterator<VCard> iterator = list.iterator(); iterator.hasNext();) {
VCard vCard = iterator.next();
c.setFirstName(vCard.getFormattedName().getValue());
c.setEmailAddress(vCard.getEmails().get(0).getValue());
c.setMobilePhone(vCard.getTelephoneNumbers().get(0).getText());
someDtoList .add(c);
}
return someDtoList ;
是否有简化的处理方式?就像内置方法要注意DTO是否具有更多属性,这样我们就可以避免手工操作?
我正在使用vCard JAR:https://github.com/mangstadt/ez-vcard
答案 0 :(得分:0)
也许可以尝试一下https://github.com/mangstadt/ez-vcard,它最初是由Google开发的,并且提供了很多可能性。
您可能会尝试将您的vcard转换为json,以便有更多的可能性进行进一步的工作。
String json = Ezvcard.writeJson(vcard).go();