Kontak adalah bagian penting dari setiap klien email karena memfasilitasi pengguna dengan mengingat semua kontak mereka, mirip dengan kontak di ponsel cerdas Anda. Kontak Outlook menyimpan banyak informasi tentang seseorang, seperti nama, alamat, nomor kontak, alamat email, dll. Kontak ini dapat disimpan dalam format MSG dan VCF. Anda mungkin menemukan diri Anda dalam skenario di mana Anda perlu membuat atau mengubah kontak MSG atau VCF secara terprogram. Untuk itu, artikel ini akan mengajarkan Anda cara bekerja dengan kontak MSG dan VCF menggunakan C++.

C++ API untuk Bekerja dengan Kontak MSG dan VCF

Aspose.Email for C++ adalah pustaka C++ asli untuk membuat, memanipulasi, dan mengirim email tanpa memerlukan penginstalan Microsoft Outlook. API juga mendukung bekerja dengan kontak dan kalender. Anda dapat menginstal API melalui NuGet atau mengunduhnya langsung dari bagian Unduhan.

PM> Install-Package Aspose.Email.Cpp

Buat Kontak MSG dan VCF

Di bagian ini, Anda akan mempelajari cara membuat kontak Outlook dan menyimpannya dalam format MSG dan VCF. Berikut adalah langkah-langkah untuk mencapainya.

Kode contoh berikut menunjukkan cara membuat kontak Outlook dan menyimpannya dalam format MSG dan VCF menggunakan C++.

// Buat instance kelas MapiContact untuk mewakili kontak
System::SharedPtr<MapiContact> contact = System::MakeObject<MapiContact>();

// Atur properti kontak
System::SharedPtr<MapiContact> contact = System::MakeObject<MapiContact>();
contact->set_NameInfo(System::MakeObject<MapiContactNamePropertySet>(u"John", u"A.", u"Doe"));
contact->set_ProfessionalInfo(System::MakeObject<MapiContactProfessionalPropertySet>(u"Awthentikz", u"Social work assistant"));
contact->get_PersonalInfo()->set_PersonalHomePage(u"aspose.com");
contact->get_PhysicalAddresses()->get_HomeAddress()->set_Address(u"Im Astenfeld 59 8580 EDELSCHROTT");
contact->get_ElectronicAddresses()->set_Email1(System::MakeObject<MapiContactElectronicAddress>(u"test", u"SMTP", u"JohnADoe@test.com"));
contact->set_Telephones(System::MakeObject<MapiContactTelephonePropertySet>(u"06605045265"));
contact->get_PersonalInfo()->set_Children(System::MakeArray<System::String>({ u"child1", u"child2", u"child3" }));
contact->set_Categories(System::MakeArray<System::String>({ u"category1", u"category2", u"category3" }));
contact->set_Mileage(u"Some test mileage");
contact->set_Billing(u"Test billing information");
contact->get_OtherFields()->set_ReminderTime(System::DateTime(2022, 1, 1, 0, 0, 55));
contact->get_OtherFields()->set_UserField1(u"ContactUserField1");
contact->get_OtherFields()->set_UserField2(u"ContactUserField2");
contact->get_OtherFields()->set_UserField3(u"ContactUserField3");
contact->get_OtherFields()->set_UserField4(u"ContactUserField4");

// Menambahkan foto
{
    System::SharedPtr<System::IO::FileStream> fs = System::IO::File::OpenRead(u"SourceDirectory\\Desert.jpg");
    System::ArrayPtr<uint8_t> buffer = System::MakeArray<uint8_t>(fs->get_Length(), 0);
    fs->Read(buffer, 0, buffer->get_Length());
    contact->set_Photo(System::MakeObject<MapiContactPhoto>(buffer, Aspose::Email::Mapi::MapiContactPhotoImageFormat::Jpeg));
}

// Simpan kontak dalam format MSG
contact->Save(u"OutputDirectory\\MapiContact_out.msg", Aspose::Email::Mapi::ContactSaveFormat::Msg);

// Simpan kontak dalam format VCF
contact->Save(u"OutputDirectory\\MapiContact_out.vcf", Aspose::Email::Mapi::ContactSaveFormat::VCard);
Kontak dihasilkan oleh kode sampel

Kontak dihasilkan oleh kode sampel

Baca Kontak MSG dan VCF

Aspose.Email for C++ mendukung membaca kontak dalam format MSG dan VCF. Di sini, Anda akan melihat cara membuka kontak MSG dan VCF menggunakan C++.

Baca Kontak MSG

Berikut langkah-langkah membaca kontak MSG.

Berikut ini adalah contoh kode untuk membaca kontak MSG menggunakan C++.

// Muat file kontak
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(u"SourceDirectory\\Contact.msg");
System::SharedPtr<MapiContact> mapiContact = System::DynamicCast<Aspose::Email::Mapi::MapiContact>(msg->ToMapiMessageItem());

// Menampilkan informasi kontak
System::Console::WriteLine(mapiContact->get_NameInfo()->get_DisplayName());
System::Console::WriteLine(mapiContact1->get_PhysicalAddresses()->get_HomeAddress()->get_Address());
System::Console::WriteLine(mapiContact->get_Telephones()->get_PrimaryTelephoneNumber());
System::Console::WriteLine(mapiContact->get_ElectronicAddresses()->get_Email1());

Buka Kontak VCF

Untuk membaca kontak VCF, cukup muat kontak menggunakan metode MapiContact::FromVCard. Kode contoh berikut menunjukkan cara membaca kontak VCF menggunakan C++.

// Muat file kontak
System::SharedPtr<MapiContact> mapiContact = MapiContact::FromVCard(u"SourceDirectory\\Contact.vcf");

// Menampilkan informasi kontak
System::Console::WriteLine(mapiContact->get_NameInfo()->get_DisplayName());
System::Console::WriteLine(mapiContact1->get_PhysicalAddresses()->get_HomeAddress()->get_Address());
System::Console::WriteLine(mapiContact->get_Telephones()->get_PrimaryTelephoneNumber());
System::Console::WriteLine(mapiContact->get_ElectronicAddresses()->get_Email1());

Ubah Kontak MSG dan VCF

Untuk memodifikasi kontak MSG/VCF, buka kontak seperti yang ditunjukkan di bagian sebelumnya, lalu ubah propertinya. Berikut langkah-langkah untuk memodifikasi kontak.

Kode contoh berikut menunjukkan cara memodifikasi kontak MSG/VCF menggunakan C++.

// Muat file kontak
System::SharedPtr<MapiMessage> msg = MapiMessage::FromFile(u"SourceDirectory\\Contact.msg");
System::SharedPtr<MapiContact> mapiContact = System::DynamicCast<Aspose::Email::Mapi::MapiContact>(msg->ToMapiMessageItem());

// Ubah properti kontak
mapiContact->set_NameInfo(System::MakeObject<MapiContactNamePropertySet>(u"John", u"A.", u"Doe"));

// Simpan kontak
mapiContact->Save(u"OutputDirectory\\MapiContact_out.msg", Aspose::Email::Mapi::ContactSaveFormat::Msg);

Dapatkan Lisensi Gratis

Anda dapat mencoba API tanpa batasan evaluasi dengan meminta lisensi sementara gratis.

Demo Langsung

Kesimpulan

Dalam artikel ini, Anda telah mempelajari cara bekerja dengan kontak MSG dan VCF menggunakan C++. Khususnya, Anda telah mempelajari cara membuat, membaca, dan memodifikasi kontak menggunakan Aspose.Email for C++ API. API menyediakan banyak fitur tambahan untuk mengotomatiskan tugas terkait email Anda. Anda dapat menjelajahi API secara mendetail dengan mengunjungi dokumentasi resmi. Jika Anda memiliki pertanyaan, jangan ragu untuk menghubungi kami di [forum dukungan gratis] kami19.

Lihat juga