【问题标题】:Get date time from conversation index timestamp从对话索引时间戳获取日期时间
【发布时间】:2014-07-26 19:27:54
【问题描述】:

在 Outlook 中有一个对话索引的概念。原始电子邮件的对话索引如下:

01017C2A2FF4481FED6C146C98A04E2FDB77CEFE8E239603ED7DE0

根据许多谷歌搜索,回复会附加一个日期时间戳 01017C2A2FF4481FED6C146C98A04E2FDB77CEFE8E239603ED7DE0800000ABF0

800000ABF0

但是他们都没有告诉你如何解析这个值。

如何从中获取 DateTime 对象?

【问题讨论】:

  • 它可以是某种格式的十六进制值吗?查看您从中获取索引的链接; 06413958E01 是另一个日期时间。也许任何人都可以看到那里的链接?
  • 如果有人好奇,线程在这里social.msdn.microsoft.com/Forums/office/en-US/…
  • 它可能是一个加密值吗?
  • 不确定,文档没有说明。 Ken Slovak 在许多帖子中说它是一个日期时间戳,但没有透露它的格式或如何将它转换为可读的东西。我从阅读中了解到的是它是一个 8 字节的时间戳,这没有任何意义,因为它是一个 10 字符的字符串,所以这意味着它至少是 10 字节。
  • 800000ABF0 似乎不是 Unix 时间戳(如果是,它是在 193 世纪)、Javascript 时间戳(它是在 1987 年)或 .NET DateTime(它将是公元 1 年 1 月 1 日)。在 10 个十六进制数字中,它是一个 5 字节的值,因此不足以成为 Excel 日期的 double 值。

标签: c# outlook outlook-addin mapi outlook-object-model


【解决方案1】:

如您所见,格式在http://msdn.microsoft.com/en-us/library/office/cc765583.aspx 中指定。

但是请注意,您不能将 FILETIME 结构转换为日期时间。 FileTime 是自 1601 年 1 月 1 日以来的滴答数(1 滴答 = 100 纳秒)。 DateTime 构造函数之一将刻度(8 字节整数)作为参数。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-09-26
  • 1970-01-01
  • 1970-01-01
  • 2017-12-01
  • 2014-05-22
  • 1970-01-01
  • 2011-02-20
相关资源
最近更新 更多