如何将联系人保存为.vcf格式

本文关键字:vcf 格式 保存 联系人 | 更新日期: 2023-09-27 18:08:53

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

static void Main(string[] args)
    {
        List<GoogleContacts> contacts = new List<GoogleContacts>();
        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文件中。

如何将联系人保存为.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编码。