将matlab串行时间戳转换为java.util.Date

时间:2016-12-13 11:00:18

标签: java excel matlab date

我有一个matlab串行时间戳735628.631944,需要将其转换为java.util.Date 29.01.2014 15:10:00

在excel中转​​换非常容易

string timestamp = serialTimestamp - 693960

选择Excel中的时间戳可以将其转换为自定义格式(TT.MM.JJJ hh:mm:ss)

但它在内部如何运作?有没有在java中转换它的公式?

我从CSV文件获取matlab串行时间戳,我在Java中解析它。我需要Java代码才能进行此转换。

1 个答案:

答案 0 :(得分:2)

Matlab时间是自1/0/0000以来的天数,但java.util.Date构造函数预测自1970年1月1日以来的毫秒数,因此

double timestamp = 735628.631944;
Date d = new Date((long)( (timestamp - 719529) * 86400000 ));

这里719529是一个1970年1月1日的matlab时间戳和一天内86400000毫秒的数字。

相关问题