使用约会

以ICS格式加载和保存约会

该 Appointment Aspose.Email for Java 中的类可用于以ICS格式加载约会,也可用于创建新约会并将其保存到磁盘为ICS格式。在本文中,我们首先创建约会并保存为ICS格式到磁盘,然后再加载它。

以ICS格式加载约会

要以ICS格式加载约会,需要执行以下步骤:

  1. 创建该类的实例 Appointment 类。
  2. 调用 Load() 通过提供 ICS 文件路径的方法。
  3. 读取任何属性以获取约会(ICS 文件)中的任何信息。

以下代码片段展示了如何加载 ICS 格式的约会。

创建约会并以ICS格式保存到磁盘

创建约会并以ICS格式保存需要以下步骤。

  1. 创建该类的实例 Appointment 类并使用此构造函数进行初始化。
  2. 在上述构造函数中传递以下参数
    1. 与会者
    2. 描述
    3. 结束日期
    4. 地点
    5. 组织者
    6. 开始日期
    7. 摘要
    8. 创建日期
    9. 最后修改日期 
  3. 调用 Save() 方法,并在参数中指定文件名和格式。

该约会可以在 Microsoft Outlook 或任何能够加载ICS文件的程序中打开。如果在 Microsoft Outlook 中打开,该约会会自动添加到 Outlook 日历中。

以下代码片段展示了如何创建约会并以ICS格式保存到磁盘。

将约会保存为 MSG 格式

Aspose.Email 使直接将约会保存为 .msg 文件成为可能。以下公共类可用于自定义约会的保存过程:

以下代码示例展示了如何从文件加载约会,然后以两种不同格式保存:.ics 和 .msg。

Appointment appointment = Appointment.load("fileName");
appointment.save("fileName.ics", new AppointmentIcsSaveOptions());
appointment.save("fileName.msg", new AppointmentMsgSaveOptions());

使用HTML内容创建约会

在 iCalendar(RFC 5545)格式中,使用 X-ALT-DESC 头是常见做法。它是一种扩展属性,提供日历项或事件的可读性更强的替代描述。此头通常用于包含事件描述的纯文本或 HTML 表示,可用于兼容旧版日历软件或提供简化的描述版本。当收件人的日历应用程序不支持或未正确显示主要描述时,将使用 X-ALT-DESC 头提供事件的替代描述。它允许发送者包含不同形式的事件描述,以确保在不同的日历软件和平台之间具有更好的兼容性和可访问性。若要创建带有 HTML 内容的约会,请设置 HtmlDescription 属性设为 ’true’。请尝试以下代码示例,演示如何创建并定义约会对象的特定细节和设置,包括日期、时间、地点、组织者、与会者以及格式化的描述:

Date startDate = new Date();
Appointment appointment = new Appointment("Bygget 83",
        startDate, // start date
        addHours(startDate, 1), // end date
        new MailAddress("TintinStrom@from.com", "Tintin Strom"), // organizer
        MailAddressCollection.to_MailAddressCollection(
                new MailAddress("AinaMartensson@to.com", "Aina Martensson"))); // attendee
appointment.setHtmlDescription("<html>\n"
        + "     <style type=\"\"text/css\"\">\n"
        + "      .text {\n"
        + "             font-family:'Comic Sans MS';\n"
        + "             font-size:16px;\n"
        + "            }\n"
        + "     </style>\n"
        + "    <body>\n"
        + "     <p class=\"\"text\"\">Hi, I'm happy to invite you to our party.</p>\n"
        + "    </body>\n"
        + "    </html>");

创建草稿约会请求

为了以草稿模式保存约会, Method 属性的 Appointment 类应设置为 Publish。以下代码示例演示了该属性的使用方法。

从文本创建草稿约会

向日历项添加和移除附件

Aspose.Email 提供了附件集合,可用于添加和检索与日历项关联的附件。本文展示了如何:

  1. 创建并添加附件到一个 Appointment 类对象。
  2. 检索约会的附件信息。
  3. 从约会中提取附件。

约会格式化

以下编程示例演示如何使用 AppointmentFormattingOptions 用于格式化文本和HTML的类。

编程示例 - 文本格式化

编程示例 - HTML 格式化

从ICS文件读取多个事件

向ICS文件写入多个事件

设置约会与会者的参与者状态

Aspose.Email for .NET API 允许在编写回复消息时设置约会与会者的状态。这会向ICS文件添加 PARTSTAT 属性。

自定义 iCalendar 的产品标识符

Aspose.Email for Java API 允许获取或设置创建 iCalendar 对象的产品标识符。

加载约会时如何规避地址验证

Aspose.Email for Java API 通过设置来规避电子邮件验证错误 IgnoreSmtpAddressCheck 选项在 AppointmentLoadOptions 对象并将其传递给加载调用。

AppointmentLoadOptions lo = new AppointmentLoadOptions();
lo.setIgnoreSmtpAddressCheck(true);
Appointment appointment = Appointment.load("app.ics", lo);