Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取java.lang.OutOfMemoryError:读取excel文件时超出了GC开销限制_Java_Memory Management_Apache Poi - Fatal编程技术网

获取java.lang.OutOfMemoryError:读取excel文件时超出了GC开销限制

获取java.lang.OutOfMemoryError:读取excel文件时超出了GC开销限制,java,memory-management,apache-poi,Java,Memory Management,Apache Poi,我正在尝试使用ApachePOI读取一个具有2G堆内存的简单8MB文件。 但是我越来越紧张了 以下是生成问题的代码: FileInputStream file = new FileInputStream(new File(srcFileName)); XSSFWorkbook workbook = new XSSFWorkbook(file); XSSFSheet sheet = workbook.getSheetAt(0); 我不认为这个操作需要这么多内存,我知道有很多问题要问,

我正在尝试使用ApachePOI读取一个具有2G堆内存的简单8MB文件。 但是我越来越紧张了

以下是生成问题的代码:

  FileInputStream file = new FileInputStream(new File(srcFileName));
  XSSFWorkbook workbook = new XSSFWorkbook(file);
  XSSFSheet sheet = workbook.getSheetAt(0);
我不认为这个操作需要这么多内存,我知道有很多问题要问,但我尝试了很多方法?

使用它解决了我在大型excel文件中的问题

参考文献


有关.xlsx文件的低内存读取,请参阅阅读文档并遵循?
  FileInputStream file = new FileInputStream(new File(srcFileName));
  XSSFWorkbook workbook = new XSSFWorkbook(file);
  XSSFSheet sheet = workbook.getSheetAt(0);