我想读取excel文件并将所有数据传递给数据库。我找到了几个代码示例,但它们都需要外部罐子。我如何才能使用标准库来读取excel文件?如何阅读与Java没有外部罐子的excel文件
回答
如果你不想使用库,那么你将不得不下载Excel file format specs from MS并自己编写一个Excel解析器(这对于一个开发者来说非常复杂并且需要10年以上的时间)。对于OpenXML格式规范,请参阅here和here。
因此我真的建议使用该库...
尝试Apache POI - 一个免费的Java库,用于处理MS Office文档..
您可以保存为Excel文件*将该.cvs和拼写“;”。然后,您可以逐行读取文件并获取每个令牌获取的列。
我知道了,但是从excel到csv的转换不支持utf-8 – Ofer 2012-02-02 07:20:28
微软excel使用二进制的方式来保存它的数据,所以手动读取excel文件可能是一件麻烦事。如果您可以将excel(xls)转换为逗号分隔值(csv)文件,那么您只需读取该文件并在逗号分隔输入即可。
我知道,但是从excel到csv的转换不支持utf-8 – Ofer 2012-02-02 07:21:30
这是一个难题。首先,它不像“添加第三方库”那么简单。没有现成的EXCEL阅读库不需要花费金钱,我知道那个工作的阅读库非常昂贵并且存在缺陷。
一种策略是创建一个Excel添加,读取数据并通过OLE或剪贴板或TCP/IP端口将其传输到您的应用程序或将其保存到临时文件。如果您查看OPeNDAP.org的ODC项目的源代码,您可以找到一个Excel添加和TCP功能来执行此操作。
您可以尝试引用OpenOffice中的开源代码,但在我看来,由于各种原因,代码不容易重构为私有项目。
Microsoft拥有用于打开Excel文件并通过COM对象公开它们的组件和工具。
您还可以学习BIFF格式并编写自己的解析器。你可能会想为BIFF5编写一个解析器,但是要事先警告,这是一个BIG项目,即使你只解析有限数量的数据类型。
也许我不明白第一段,但是有本网站上提及的至少2个可以读取/写入声称可以正常工作的Excel文件的开源示例。 – Tshepang 2012-03-26 11:57:46
- 1. NoClassDefFoundError在没有外部罐子的android
- 2. java使用外部罐子
- 3. 阅读XML与阅读CSV文件java
- 4. 的Java创建外部罐子
- 5. 读取文件的罐子
- 6. 阅读Excel文件
- 7. 从外部罐子
- 8. 如何阅读导出的Excel文件?
- 9. 如何阅读asp.net以外的excel文件而不是OleDbConnection
- 10. 在Java中阅读Excel文件(.xls)
- 11. Java:文件阅读与类中。为什么没有输出?
- 12. Django的 - 阅读Excel文件
- 13. 执行一个罐子与外部性文件
- 14. Eclipse和外部的罐子
- 15. 你如何阅读java中的文本文件的部分?
- 16. 如何使用外部罐子
- 17. 阅读Excel电子表格xml文件[Java]
- 18. 阅读没有任何部分的ini文件?
- 19. 阅读Java文件
- 20. 从外部Excel文件读取数据
- 21. 从外部表中读取Excel文件
- 22. C#3.5阅读Excel文件
- 23. 阅读Excel文件C#
- 24. 阅读Excel文件Python
- 25. 外部罐子没有连接到Netbeans中的SQL
- 26. Excel的罐子POI 3.13 HTC不读文件
- 27. 阅读的.xlsx没有Excel和OLEDB
- 28. 如何从系统外部的java代码中读取excel文件?
- 29. 阅读和外部文件与整数和字符串在C
- 30. java的外部文件中读取
我不想将库添加到我的项目中。 – Ofer 2012-02-02 07:20:57
@OferTaviv如果你不想添加一个库,那么你将不得不从MS下载Excel文件格式规范,并自己编写一个Excel解析器(这非常复杂,一个开发人员需要10年以上的时间)。 – Yahia 2012-02-02 07:22:28
对不起,但这只是一个愚蠢的想法。要阅读Excel文件格式,您必须编写大量复杂的代码。如果你真的不想使用外部库,你绝对应该考虑使用不同的格式,如CSV。试图阅读XLS而不使用任何现有的库,就像开始通过购买橡胶种植园来制造汽车一样,以便能够生产自己的轮胎... – Axel 2012-02-02 09:21:16