Apache POI中的行迭代器是否有任何限制?

时间:2014-06-18 14:41:02

标签: java excel apache-poi

 try {File inputFile = new File(str2);
        File inputFile1 = new File (str1);
         XSSFWorkbook wb = new XSSFWorkbook(new FileInputStream(inputFile));
         XSSFWorkbook wb1 =new XSSFWorkbook(new FileInputStream(inputFile1));

          XSSFSheet sheet1 = wb.getSheetAt(0);
          XSSFSheet sheet2;
     Iterator<Row> iterator1 =sheet1.iterator();
 while (iterator1.hasNext()){
            row1=iterator1.next();

           cell1= row1.getCell(4);
           String output=cell1.toString();

           System.out.println(cell1.toString());
          //a1.add(cell1.toString());
           // int m = jList1.getSelectedIndex();
         }
        catch (Exception e){

              Logger.getLogger(def.class.getName()).log(Level.SEVERE, null, e);
            }

            }  

尽管有13k行,但它在10k行之后才读取打印。有解决方案吗可以使用SXSSF Sheet吗?

1 个答案:

答案 0 :(得分:0)

据我所知,通常对迭代器的大小没有限制(假设有足够的RAM或者是从文件缓冲)。在你的情况下,我建议两件事:

  1. 确保Apache POI没有默认限制。
  2. 10k上没有奇怪的字符,迭代器可能会将其视为缓冲区的末尾
相关问题