如何有效地使用apache-poi从FTP服务器读取大型Excel文件?

时间:2019-06-08 13:52:52

标签: java excel ftp apache-poi sftp

我想读取具有300k条记录的大型excel文件(.xls),文件大小最大为300 MB。阅读后,我想将该数据加载到db表中。

我写了一个普通的poi代码来从本地计算机读取xls文件。我针对具有约60k条记录的excel文件运行了该代码,它工作得很好。我也写了代码从ftp获取输入流并运行了它,它工作正常,但是当我对具有200k +记录的文件运行相同的代码(在本地)时,它给了我一些系统gc内存已完全错误。我没有尝试使用ftp服务器上的200k条记录运行该代码。

使用哪种方法从FTP服务器读取文件? 我还在下面的互联网上看到了几行代码:

InputStream is = new FileInputStream(new File("/path/to/workbook.xlsx")); 
Workbook workbook = 
StreamingReader.builder().rowCacheSize(100).bufferSize(4096).
sheetIndex(0).open(is);

但是上面的代码行给了我工作簿对象。我想要一个XSSFWorkbook对象。

0 个答案:

没有答案