将 Excel 中表示日期的数字转换为 Java Date 对象
我在Excel中有一个日期列,但是当我在Java应用程序中读取它时,我得到的值是数字。
例
Excel Date
1/1/2013
我把它理解为
41275.00
如何在我的Java应用程序中将数字转换为日期?
我在Excel中有一个日期列,但是当我在Java应用程序中读取它时,我得到的值是数字。
例
Excel Date
1/1/2013
我把它理解为
41275.00
如何在我的Java应用程序中将数字转换为日期?
下面是一个如何将 Excel 日期转换为 Java 日期的最小工作示例:
Date javaDate= DateUtil.getJavaDate((double) 41275.00);
System.out.println(new SimpleDateFormat("MM/dd/yyyy").format(javaDate));
返回
01/01/2013
您还需要导入以下程序包:
java.text.SimpleDateFormat
java.util.Date
Apache POI有一些用于该 http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/DateUtil.html 实用程序,特别是 http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/DateUtil.html#getJavaDate(双)
注意 Excel 将日期存储为自 1900 年以来的天数(加上小数天数)(在某些情况下,它可以是从 1904 年开始的)。请参阅 http://support.microsoft.com/kb/180162。