我有一个问题,当java应用程序读取Excel文件.xlsx扩展时,应用程序正常工作,但工作簿中有很多工作表,1、2个工作表正确读取,但当读取3个工作表时,没有读取所有单元格,当我打开并检查Excel文件时,单元格存在空值,但当apache poi读取它时,单元格只是忽略了空单元格。什么是事业?更新
FileInputStream file = new FileInputStream(file_location);
//this.workbook = new HSSFWorkbook(file);
this.workbook = new XSSFWorkbook(file);
XSSFSheet mySheet = workbook.getSheetAt(index);
Iterator rowIter = mySheet.rowIterator();
while(rowIter.hasNext()){
XSSFRow myRow = (XSSFRow) rowIter.next();
Iterator cellIter = myRow.cellIterator();
ArrayList colStoreArray=new ArrayList();
while(cellIter.hasNext()){
XSSFCell myCell = (XSSFCell) cellIter.next();
colStoreArray.add(myCell);
}
rowArrayHolder.add(colStoreArray);
} }
上面读的是excel文件,而我检查的excel文件中有一行20个单元格,而它读的有的行只有14行。我使用的是ArrayList,看来这里应该是并发访问ArrayList的问题。什么能引起?
迭代器只对文件中定义的单元格进行迭代。如果单元格从未在Excel中使用过,它可能不会出现在文件中(Excel并不总是一致……),所以POI不会看到它
如果要确保命中每个单元格,则应按索引进行查找,并检查是否存在空单元格(表示该单元格从未存在于文件中),或者设置MissingCellPolicy
以控制如何处理空单元格和空单元格
问题内容: 我有一个问题,当java应用程序读取Excel文件.xlsx扩展名时,该应用程序正常工作,但是在工作簿中有很多工作表,其中1、2个工作表正确读取,但是当读取3个工作表时,没有读取所有单元格当我打开并从Excel文件中检查时,单元格存在空值,但是当apache poi读取该单元格时,该单元格将被忽略。原因是什么? 更新资料 在读取excel文件上方,虽然我在一行中检查了Excel文件20
读取文件已支持 windows 系统,版本号大于等于 1.3.4.1; 扩展版本大于等于 1.2.7; PECL 安装时将会提示是否开启读取功能,请键入 yes; 测试数据准备 $config = ['path' => './tests']; $excel = new \Vtiful\Kernel\Excel($config); // 写入测试数据 $filePath = $excel->f
问题内容: 我有一些代码可以读取名称文件并创建列表: 每个名称用换行符分隔,如下所示: 我想忽略仅包含空格的任何行。我知道我可以通过以下方式来实现:创建一个循环并检查读取的每一行,然后将其添加到列表(如果不是空白的话)。 我只是想知道是否还有更Pythonic的方法? 问题答案: 我将堆栈生成器表达式: 现在,是所有非空白行。这将使您不必在线路上两次打电话。如果需要行列表,则可以执行以下操作: 您
我正在使用Apache POI解析Excel。是否可以让Apache POI将空字符串视为null并忽略它们? 可能有excel表将数百万个单元格设置为文本,如下所示,导致所有单元格被Apache POI解释为空字符串。由于有数百万个空的字符串单元格,逐个单元格地检查会导致严重的性能问题: 无论如何,Apache POI是否可以忽略这些空字符串单元格,这样我们就不必逐个单元格地单独读取单元格来检查
问题内容: 我正在尝试读取文件以生成DOM文档,但是该文件包含空格和换行符,并且我试图忽略它们,但是我不能: 我在Javadoc中看到,只有在启用了验证标志的情况下,setIgnoringElementContentWhitespace方法才起作用,但是我没有文档的DTD或XML Schema。 我能做什么? 更新资料 我不喜欢引入mySelf <!ELEMENT …声明的想法,并且我尝试了Tom
问题内容: 我有一些代码可以从文件中读取行,我想识别行何时开始或fisrt字符(非空白)为’ ‘并忽略它,因此在while语句中添加如下内容 我有类似的东西: 如何完成代码? 问题答案: