HTMLDocument.Iterator类型不是通用错误

时间:2015-09-05 13:10:31

标签: java generics apache-poi import-from-excel

我正在尝试使用Apache POI读取.xlsx文件。我添加到构建路径的jar文件是:

poi-3.12-20150511.jar
poi-ooxml-3.12-20150511.jar
poi-ooxml-schemas-3.12-20150511.jar
xmlbeans-2.6.0.jar

我现在正在使用这个readFromExcel方法:

public void readFromExcel(){


    String excelFilePath = "Books.xlsx";
    FileInputStream inputStream = new FileInputStream(new File(excelFilePath));


     XSSFWorkbook workbook = new XSSFWorkbook(inputStream);

     XSSFSheet firstSheet = workbook.getSheetAt(0);

     Iterator<Row> iterator = firstSheet.iterator();


        while (iterator.hasNext()) {
            Row nextRow = iterator.next();
            Iterator<Cell> cellIterator = nextRow.cellIterator();

            while (cellIterator.hasNext()) {
                Cell cell = cellIterator.next();

                switch (cell.getCellType()) {
                    case Cell.CELL_TYPE_STRING:
                        System.out.print(cell.getStringCellValue());
                        break;
                    case Cell.CELL_TYPE_BOOLEAN:
                        System.out.print(cell.getBooleanCellValue());
                        break;
                    case Cell.CELL_TYPE_NUMERIC:
                        System.out.print(cell.getNumericCellValue());
                        break;
                }
                System.out.print(" - ");
            }
            System.out.println();
        }

        workbook.close();
        inputStream.close();

现在我要解决这两个错误:

  

HTMLDocument.Iterator类型不是通用的;它不能用参数参数化   HTMLDocument.Iterator类型不是通用的;它不能用参数

参数化

2 个答案:

答案 0 :(得分:0)

您可以使用$scope.selected = 'worker'.方法。 试试这个:

row.getCell()

答案 1 :(得分:0)

您导入了错误的迭代器!

在导入部分中,您必须具有以下内容:

import blah.blah.HTMLDocument.Iterator;

您需要将其更改为正确的java.util.Iterator,例如

import java.util.Iterator;

您也犯了其他一些错误......如果explained here in the POI docs,如果您有File,请将其提供给POI,而不是FileInputStream

其次,您可以使用for-each迭代,如detailed here in the docs,例如

for (Row row : sheet) {
   for (Cell cell : row) {
      ...

然后你甚至不需要显式地使用迭代器来开始!