我想使用Outlook电子邮件中的邮件内容。假设我有一些格式化的内容包含图像,表格,颜色,大小等。现在我想将所有这些内容复制/粘贴到一个微软word文档中,并在outlook电子邮件中正确对齐
这是代码
Microsoft.Office.Interop.Outlook.Application app = null;
Microsoft.Office.Interop.Outlook._NameSpace ns = null;
Microsoft.Office.Interop.Outlook.MailItem item = null;
Microsoft.Office.Interop.Outlook.MAPIFolder inboxFolder = null;
Microsoft.Office.Interop.Outlook.MAPIFolder subFolder = null;
try
{
app = new Microsoft.Office.Interop.Outlook.Application();
ns = app.GetNamespace("MAPI");
ns.Logon(null,null,false, false);
inboxFolder = ns.GetDefaultFolder(Microsoft.Office.Interop.Outlook.OlDefaultFolders.olFolderInbox);
subFolder = inboxFolder.Folders[3];
Console.WriteLine("Folder Name: {0}, EntryId: {1}", subFolder.Name, subFolder.EntryID);
Console.WriteLine("Num Items: {0}", subFolder.Items.Count.ToString());
for(int i=1;i<=subFolder.Items.Count;i++)
{
item = (Microsoft.Office.Interop.Outlook.MailItem)subFolder.Items[i];
Console.WriteLine("Item: {0}", i.ToString());
Console.WriteLine("Subject: {0}", item.Subject);
// Console.WriteLine("Sent: {0} {1}" item.SentOn.ToLongDateString(), item.SentOn.ToLongTimeString());
Console.WriteLine("Categories: {0}", item.Categories);
Console.WriteLine("Body: {0}", item.Body);
Console.WriteLine("BodyFormat: {0}", item.BodyFormat);
Console.WriteLine("HTMLBody: {0}", item.HTMLBody);
Console.WriteLine("Attachment:{0}", item.Attachments.Count);
答案 0 :(得分:0)
Outlook使用Word作为Outlook中的电子邮件编辑器。因此,您可以使用Word对象模型修改正文内容或直接将其复制到现有Word文档中。 Inspector类的WordEditor属性返回Document类的实例,该实例表示电子邮件的正文。
您可以在MSDN中的Chapter 17: Working with Item Bodies中了解使用正文的所有可能方法。
您也可以使用SaveAs方法保存项目,并将olDoc值作为第二个参数传递。