如何阅读与Java没有外部jar子的Excel文件

我正在尝试读取excel文件并将所有数据传递给数据库。 我find了一些代码示例,但是他们都需要外部的jar子。 我怎样才能使用标准库读取excel文件?

如果你不想使用库,那么你将不得不从MS下载Excel文件格式规范,并自己编写一个Excelparsing器(对于一个开发人员来说,这非常复杂,需要10年以上的时间)。 对于OpenXML格式规范,请参阅这里和这里 。

所以我真的推荐使用一个库…

尝试Apache POI – 一个用于处理MS Office文档的免费Java库

您可以保存为excel文件* .cvs并且分配“;”。 然后,您可以逐行读取文件,并获取每个令牌所获得的列。

微软的Excel使用二进制的方式来保存它的数据,所以手动阅读Excel文件可能是一个麻烦。 如果您可以将excel(xls)转换为逗号分隔值(csv)文件,那么您只需读取该文件并将其input分割为逗号即可。

这是一个难题。 首先,它不像“添加第三方库”那么简单。 没有现成的EXCEL阅读库不花钱,而且我知道那个工作的阅读库非常昂贵,并且存在缺陷。

一个策略是创build一个Excel添加,读取数据并通过OLE或剪贴板或TCP / IP端口将其传输到您的应用程序或将其保存到临时文件。 如果您查看OPeNDAP.org的ODC项目的源代码,您可以find一个Excel添加和TCPfunction来执行此操作。

您可以尝试引用OpenOffice中的开放源代码的读者,但是,我认为,由于各种原因,代码不容易被重构为私人项目。

Microsoft有组件和工具来打开Excel文件并通过COM对象公开它们。

您也可以学习BIFF格式并编写自己的parsing器。 您可能会想为BIFF5编写一个parsing器,但是要事先警告,这是一个BIG项目,即使您只parsing有限数量的数据types。