KContacts::VCardConverter Class

class KContacts::VCardConverter

Class to converting contact objects into vCard format and vice versa. More...

Header: #include <KContacts/VCardConverter>
CMake: find_package(KF6 REQUIRED COMPONENTS Contacts)
target_link_libraries(mytarget PRIVATE KF6::Contacts)

Public Types

enum Version { v2_1, v3_0, v4_0 }

Public Functions

VCardConverter()
QByteArray createVCard(const KContacts::Addressee &addr, KContacts::VCardConverter::Version version = v3_0) const
QByteArray createVCards(const Addressee::List &list, KContacts::VCardConverter::Version version = v3_0) const
QByteArray exportVCard(const KContacts::Addressee &addr, KContacts::VCardConverter::Version version) const
QByteArray exportVCards(const Addressee::List &list, KContacts::VCardConverter::Version version) const
KContacts::Addressee parseVCard(const QByteArray &vcard) const
Addressee::List parseVCards(const QByteArray &vcard) const

Detailed Description

This class implements reading and writing of contact using from/to the vCard format. Currently vCard version 2.1, 3.0 and 4.0 are supported.

Example:

QFile file("myfile.vcf");
if (!file.open(QIODevice::ReadOnly)) {
    qWarning() << "Could not open contact file:" << file.errorString();
    return;
}

QByteArray data = file.readAll();

VCardConverter converter;
Addressee::List list = converter.parseVCards(data);

// print formatted name of first contact
if (!list.isEmpty()) {
    qDebug() << "name=" << list.first().formattedName();
}

Member Type Documentation

enum VCardConverter::Version

ConstantValueDescription
KContacts::VCardConverter::v2_10VCard format version 2.1
KContacts::VCardConverter::v3_01VCard format version 3.0
KContacts::VCardConverter::v4_02VCard format version 4.0

Member Function Documentation

VCardConverter::VCardConverter()

Constructor.

QByteArray VCardConverter::createVCard(const KContacts::Addressee &addr, KContacts::VCardConverter::Version version = v3_0) const

Creates a string in vCard format which contains the given contact.

addr The contact object

version The version of the generated vCard format

QByteArray VCardConverter::createVCards(const Addressee::List &list, KContacts::VCardConverter::Version version = v3_0) const

Creates a string in vCard format which contains the given list of contact.

list The list of contact objects

version The version of the generated vCard format

QByteArray VCardConverter::exportVCard(const KContacts::Addressee &addr, KContacts::VCardConverter::Version version) const

QByteArray VCardConverter::exportVCards(const Addressee::List &list, KContacts::VCardConverter::Version version) const

KContacts::Addressee VCardConverter::parseVCard(const QByteArray &vcard) const

Parses a string in vCard format and returns the first contact.

Addressee::List VCardConverter::parseVCards(const QByteArray &vcard) const

Parses a string in vCard format and returns a list of contact objects.