将C#date时间对象转换为Exceldate格式

我需要将C#的date时间对象转换为可怕的Exceldate格式: https : //datapub.cdlib.org/2014/04/10/abandon-all-hope-ye-who-enter-dates-in-excel/

即1900年1月1日以来的天数,用浮点数表示。

有没有办法做到这一点,而不诉诸于DIY代码? 我需要它来创buildExcel友好的CSV导出

除了那个好博客文章外,我没有发现任何有用的东西

Exceldate使用OLE自动化date格式。 您可以使用DateTime.ToOADate检索它

OAdate是其整数部分是从1899年12月30日起的date偏移(即较早的date是负的)的双倍,小数部分是时间除以24。

这种types在COM / VB6日子里被使用了很多。 现在,Excel需要使用Excel,而且需要调用期望date或带有date内容的变体的COM API。