把一个xls文件放入一个jar文件中

我有一个xls电子表格,我使用metaModel查询,我想保留在jar中的xls文件,因为它不会被更新。 用于创build数据上下文的方法不允许inputstream,我尝试使用此代码:

DataContext dataContext = DataContextFactory.createExcelDataContext(getClass().getResourceAsStream("database.xls")); 

不幸的是,这不起作用,因为createExcelDataContext方法不会将inputstream作为参数。 有没有办法将文件保存在jar中?

看起来最简单的方法就是导出到csv,因为这很容易完成。

鉴于可以从InputStream创build其他types的上下文,我猜测这是Excel的一个限制,如果不在文件系统上,将无法打开Excel文件。

考虑从jar中提取文件并将其内容复制到一个临时文件,在应用程序结束时可能会被删除。 请参阅File.createTempFile()和File.deleteOnExit() 。

Interesting Posts