如何以.VCF格式保存联系人

我有一个类来保存数据和该类的列表。 这是我的代码。

static void Main(string[] args) { List contacts = new List(); contacts.Add(new GoogleContacts { title = "A", email = "B", im = "X" }); contacts.Add(new GoogleContacts { title = "C", email = "D", im = "Y" }); contacts.Add(new GoogleContacts { title = "E", email = "F", im = "Z" }); } } public class GoogleContacts { public string title { get; set; } public string email { get; set; } public string im { get; set; } } 

我想将这些数据保存在本地磁盘的.VCF文件中。

只需创建一个StringBuilder实例并将.VCF的内容写入其中。

 var contact = new GoogleContacts() { ... }; var vcf = new StringBuilder(); vcf.Append("TITLE:" + contact.Title + System.Environment.NewLine); //... 

然后,您可以使用File类型的静态WriteAllText (…)方法将其保存到文件中。

 var filename = @"C:\mycontact.vcf"; File.WriteAllText(filename, vcf.ToString()); 

只需使用文本编辑器打开.vcf文件即可浏览其内容。 由于您只需要几个属性,因此很容易理解。

一个小例子:

 BEGIN:VCARD FN:Mr. John Smith TITLE:Developer ORG:Microsoft BDAY:1979-12-10 VERSION:2.1 END:VCARD 

如果要包含图像,则必须对其进行64位编码。