【问题标题】:Excel Date format to number in JAVA [duplicate]Excel日期格式到JAVA中的数字[重复]
【发布时间】:2018-12-05 21:42:02
【问题描述】:

我有一个问题:

我在一个单元格中有当前日期,日期格式如下:

5/12/2018

当我将此单元格格式化为数字时(右键单击 -> 单元格格式 -> 数字),我得到了:

43439,67

如何在 Java 中获得这个数字?我试过了:

Date fecha = new Date();
System.out.println(fecha.getTime());

结果是:

1544043888569

【问题讨论】:

  • 你为什么要这样做?
  • 我猜是1/1/1900之后的天数。
  • 您可以阅读更多关于 Excel 如何做到这一点:myonlinetraininghub.com/excel-date-and-time
  • 在 Java 中处理 Excel 日期时间值已被多次询问和回答。在发布之前始终搜索 Stack Overflow。
  • 是的...但不是我需要的方式。

标签: java excel date


【解决方案1】:

Excel Date and Time 101 中所述,此号码 定义为自 1899 年 12 月 31 日以来的天数。

Date 中的getTime() 返回自 1970 年 1 月 1 日以来的毫秒数。
从中您可以轻松计算自 1899 年 12 月 31 日以来的天数。

Date fecha = new Date();
double days = fecha.getTime() / 1000.0 / 86400 + 70 * 365.25 + 1;
System.out.println(days);

【讨论】:

  • 非常感谢,这就是解决方案。
【解决方案2】:

你可以用取模算子得到结果:

Date fecha = new Date();
double secs = (fecha.getTime() % 86400000) / 1000.;
System.out.println(secs);

【讨论】:

  • 关闭!返回:78909,391
猜你喜欢
  • 1970-01-01
  • 2015-09-30
  • 2016-09-23
  • 1970-01-01
  • 1970-01-01
  • 2011-08-27
  • 1970-01-01
  • 2011-09-21
相关资源
最近更新 更多