Manage MS Contacts

การจัดการข้อมูลติดต่ออย่างมีประสิทธิภาพเป็นสิ่งสำคัญสำหรับมืออาชีพและธุรกิจ มันช่วยให้คุณสามารถค้นหาและเชื่อมต่อกับคนที่เหมาะสมได้ง่ายเมื่อคุณต้องการ ไม่ว่าคุณจะกำหนดเวลาการประชุม ส่งอีเมล หรือแชร์เอกสาร การมีข้อมูลติดต่อที่เป็นระเบียบและทันสมัยสามารถปรับปรุงประสิทธิภาพการทำงานของคุณได้อย่างมาก

ไฟล์ MSG เป็นรูปแบบที่ใช้กันทั่วไปสำหรับการจัดเก็บข้อความอีเมล ข้อมูลติดต่อ และรายการอื่นๆ การสกัดข้อมูลติดต่อจากไฟล์ MSG ของ Outlook โดยโปรแกรมสามารถเป็นงานที่สำคัญในหลากหลายสถานการณ์ เช่น การโยกย้ายข้อมูลหรือการประมวลผลข้อมูลอัตโนมัติ ในบทความนี้ เราจะสำรวจวิธีการโหลด สกัด และบันทึกข้อมูลติดต่อจากไฟล์ MSG ของ Outlook

เริ่มต้นด้วย C# API ที่ทันสมัย

ในการทำงานกับไฟล์ MSG เราจะใช้ Aspose.Email for .NET ซึ่งเป็นไลบรารีการประมวลผลและการจัดการอีเมลที่มีพลังและหลากหลาย ซึ่งให้ชุดเครื่องมือและฟังก์ชันการทำงานที่ครอบคลุมแก่ผู้พัฒนาในการทำงานกับข้อความอีเมล งาน ปฏิทิน ข้อมูลติดต่อ และงานที่เกี่ยวข้องกับอีเมลต่างๆ ในแอปพลิเคชัน .NET ดังนั้น ก่อนที่เราจะเริ่ม ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Aspose.Email และอ้างอิงในโครงการของคุณ หากคุณยังไม่ได้ทำ คุณสามารถ ดาวน์โหลด DLL ของมันหรือทำการติดตั้งจาก NuGet

การโหลดข้อมูลติดต่อจากไฟล์ MSG

ในการสกัดข้อมูลติดต่อจากไฟล์ MSG เราจำเป็นต้องโหลดไฟล์ลงในวัตถุ MapiMessage โดยใช้วิธี MapiMessage.Load ของ Aspose.Email คุณสามารถโหลดข้อมูลติดต่อเข้าไปใน MapiMessage และจัดการมันเหมือนกับข้อความ MAPI ปกติ: อ่านคุณสมบัติ ปรับเปลี่ยน บันทึก เพิ่มไปยังที่จัดเก็บ ส่ง โค้ดตัวอย่างต่อไปนี้จะแสดงให้คุณเห็นวิธีการโหลดและประมวลผลข้อมูลติดต่อของ Outlook:

  1. โหลดรายการติดต่อที่มีอยู่ในไฟล์ MSG โดยใช้วิธี MapiMessage.Load วิธีนี้อ่านเนื้อหาของไฟล์ MSG ที่ระบุและสร้างวัตถุ MapiMessage ที่แสดงถึงข้อความอีเมล
  2. ตั้งค่าคอนเทนต์ของ HTML โดยใช้วิธี SetBodyContent เพื่อแทนที่เนื้อหา
  3. ระบุพารามิเตอร์ BodyContentType.Html ซึ่งระบุว่าเนื้อหาที่ให้มานั้นอยู่ในรูปแบบ HTML ซึ่งช่วยให้มั่นใจว่าเนื้อหาจะถูกตีความอย่างถูกต้องเป็น HTML เมื่อตรวจสอบโดยลูกค้าอีเมล
  4. บันทึกวัตถุ MapiMessage ที่ปรับเปลี่ยนกลับไปยังไฟล์ MSG โดยใช้วิธี Save
var msg = MapiMessage.Load("Lynna M. Dyer.msg");
msg.SetBodyContent("<!DOCTYPE html><html><body><h1>Lynna M. Dyer</h1></body></html>", BodyContentType.Html);
msg.Save("Lynna M. Dyer.msg");

การสกัดรายละเอียดของติดต่อ

เมื่อเราโหลดไฟล์ MSG แล้ว เราสามารถสกัดรายละเอียดของติดต่อได้โดยใช้คลาส MapiContact MapiContact ให้คุณสมบัติที่สะดวกในการเข้าถึงฟิลด์ข้อมูลติดต่อเฉพาะ โค้ดตัวอย่างที่ให้มาจะแสดงวิธีการสกัดและแสดงข้อมูลติดต่อจากอีเมล MSG

  1. เริ่มต้นโดยตรวจสอบว่า MSG เป็นรายการติดต่อหรือไม่ ใช้คุณสมบัติ SupportedType ซึ่งระบุประเภทของรายการ Outlook
  2. แปลงวัตถุ msg เป็นวัตถุ MapiContact การแปลงนี้ช่วยให้เข้าถึงคุณสมบัติและวิธีการเฉพาะที่เกี่ยวข้องกับรายการติดต่อ
  3. ดึงและแสดงข้อมูลติดต่อ ในตัวอย่างนี้ เราเข้าถึงคุณสมบัติ DisplayName, Email, CompanyName, และ Title ของวัตถุ MapiContact ซึ่งแสดงถึงชื่อของผู้ติดต่อ ที่อยู่อีเมล ชื่อบริษัท และตำแหน่งงานตามลำดับ คุณสามารถเข้าถึงคุณสมบัติอื่นๆ ของวัตถุ MapiContact ตามความต้องการของคุณ
if (msg.SupportedType == MapiItemType.Contact)
{
    var contact = (MapiContact)msg.ToMapiMessageItem();

    Console.WriteLine(contact.NameInfo.DisplayName);
    Console.WriteLine(contact.ElectronicAddresses.Email1);
    Console.WriteLine(contact.ProfessionalInfo.CompanyName);
    Console.WriteLine(contact.ProfessionalInfo.Title);
}

การบันทึกรูปภาพของติดต่อ

หากไฟล์ MSG มีรูปภาพของผู้ติดต่อ เราสามารถบันทึกมันลงในไฟล์โดยใช้โค้ดต่อไปนี้:

  1. ตรวจสอบว่าผู้ติดต่อมีรูปภาพหรือไม่ ซึ่งทำได้โดยการประเมินว่าคุณสมบัติ contact.Photo ไม่เป็น null
  2. หากมีรูปภาพอยู่ โค้ดจะดำเนินการบันทึกเป็นไฟล์
if (contact.Photo != null)
{
    System.IO.File.WriteAllBytes($"{contact.NameInfo.DisplayName}.{MapiContactPhotoImageFormat.Jpeg.ToString()}", contact.Photo.Data);
}

การบันทึกข้อมูลติดต่อเป็น VCF

นอกจากนี้ บ่อยครั้งที่จำเป็นต้องแปลงข้อมูลติดต่อจาก MSG เป็นรูปแบบที่เป็นสากลมากขึ้น เช่น VCARD VCard (ไฟล์ติดต่อเสมือน) เป็นรูปแบบไฟล์มาตรฐานที่ใช้ในการจัดเก็บข้อมูลติดต่อ โค้ดตัวอย่างต่อไปนี้แสดงวิธีการบันทึกข้อมูลติดต่อที่เป็นตัวแทนของวัตถุ contact เป็นไฟล์ VCard:

โค้ดใช้วิธี Save ของวัตถุ contact เพื่อเริ่มกระบวนการบันทึกข้อมูลติดต่อเป็น VCard

contact.Save("Lynna M. Dyer.vcf", ContactSaveFormat.VCard);

โหลดข้อมูลติดต่อจาก VCF

คุณยังสามารถโหลดไฟล์ VCARD ที่มีอยู่ลงในวัตถุ MapiContact โค้ดตัวอย่างต่อไปนี้แสดงวิธีการโหลดข้อมูลติดต่อจาก VCard และสร้างวัตถุ MapiContact:

  1. โค้ดเริ่มต้นโดยใช้วิธี MapiContact.FromVCard เพื่อโหลดข้อมูลติดต่อจาก VCard
  2. ตัวแปร contact จะถือวัตถุ MapiContact ที่สร้างขึ้นใหม่ซึ่งสามารถใช้ในการเข้าถึงและจัดการรายละเอียดของผู้ติดต่อได้โดยโปรแกรม
var contact = MapiContact.FromVCard("Lynna M. Dyer.vcf");

สรุป

ในบทความนี้ เราได้สำรวจวิธีการสกัดข้อมูลติดต่อจากไฟล์ MSG ของ Outlook โดยโปรแกรมโดยใช้ Aspose.Email เราได้เดินผ่านกระบวนการโหลดไฟล์ MSG สกัดรายละเอียดของติดต่อโดยใช้คลาส MapiContact และบันทึกข้อมูลติดต่อในรูปแบบต่างๆ Aspose.Email ช่วยให้กระบวนการทำงานกับไฟล์ MSG ง่ายขึ้นและให้ฟังก์ชันการทำงานที่หลากหลายในการจัดการข้อมูลอีเมล

อย่าลืมปรับเส้นทางไฟล์และปรับโค้ดให้เหมาะสมกับความต้องการเฉพาะของคุณ เอกสารที่ครอบคลุมของ Aspose.Email documentation และฟอรัมชุมชนที่เป็นประโยชน์ forums จะช่วยสนับสนุนคุณในการใช้ประโยชน์จากความสามารถในการสกัดข้อมูลติดต่อได้อย่างมีประสิทธิภาพ

ดูเพิ่มเติม