读取ppt文件时poi记忆犹新

时间:2019-01-24 03:37:11

标签: apache-poi

我一直在研究一个使用apache-poi读取.PPT文件并更改ppt文件中SlideShowDocInfoAtom记录的某些属性的项目。

我可以使用HSLFSlideShow读取文件,但是,涉及到大的ppt文件(例如1GB以上),并且我的应用程序jvm 最大堆大小限制为2GB ,poi抛出OutOfMemorry错误。

阅读源代码后,我知道在读取文件流之一时它将创建一个字节数组。在1GB的文件中,文件中的PowerPoint文档流将高达1GB,这将消耗1GB的存储空间来创建字节数组,并以某种方式导致jvm崩溃。

因此,有什么方法可以读取大的ppt文件,而无需扩大jvm堆大小,因为我只想读取该文件的某些文档信息,所以并不想真正读取大的文件记忆中的音频或视频等文件块。

0 个答案:

没有答案