这是什么类型的时间戳,如何使用JavaScript将其转换为人类可读的

时间:2011-07-20 16:38:12

标签: javascript csv timestamp

我已经获得了数百个CSV文件,所有这些文件都带有我无法识别的时间戳。我一直在努力找到它是什么,并尝试使用JavaScript转换它们,但到目前为止,我没有运气。 我给出的所有说明都是:“时间戳39845.03代表日期01/02/2009和时间00:45。”我被告知这是微软的时间戳。

2 个答案:

答案 0 :(得分:2)

这是Microsoft Excel的时间戳格式。这是一种特殊的。 1.1.1900 0:0是1.0。 2.1.1900 0:0是2.0。

逗号背后的部分表达了时间。

ExcelTips: Unix timestamps to Excel上,他们会给出一个只需要反转的公式来实现转换。

function convertExcelTimeToUnix(excelTime) {
    return (excelTime - 25569) * 86400;
}

结果是UNIX时间戳,例如可以传递给Date的constzructor。

var realDate = new Date(convertExcelTimeToUnix(excelTime))

答案 1 :(得分:1)

看起来是自19/01/1900以来经过的天数。

 var date = new Date('01 jan 1900');
 date.setTime(date.getTime() + 39845.03 * 24 * 60 * 60 *1000);

将在javascript中完成。

额外的乘数非常明显地将它转换为毫秒。