将Excel工作表格式的日期和时间数据导入C ++程序

时间:2019-03-30 00:55:01

标签: excel datetime

我正在使用开源库XLNT将Excel数据导入到我的C ++程序中。

 1)  Date  2/21/2019 in excel sheet is interpreted as 43517 in C++ program

 2)  Time  5:30:00  is interpreted as 0.229167 in C++ program

在Excel工作表上,这两列均采用日期和时间格式。 我不知道如何推导出这些参数值。任何线索将不胜感激。

1 个答案:

答案 0 :(得分:0)

了解卓越的时间/日期

Excel将日期存储为整数。它是自1900年1月0日以来的天数。所以1是1900年1月1日。(我相信Mac的参考年是1905,但我可能错了)。因此,excel中的所有日期都是简单的整数,并应用了一些特殊格式以我们惯常的方式显示它们。另一方面,时间存储为一天的%,或者如果您更喜欢一天的小数,则存储时间。 0.5代表半天或午餐。因此,如果您只需要从混合时间日期中查找日期,则只需去除整数部分。相反,如果您只需要时间,则只需要除去小数部分即可。

演示

1)打开excel 2)在一个单元格中输入0,然后在另一个1中输入2,依此类推。 3)将单元格的格式从“常规”更改为“日期”,并注意日期与整数的关系以及整数的变化与日期的变化。

43517是自1900年1月0日以来的天数。