如何使用Apache POI读取特定行?

格鲁姆

我正在使用Apache POI库,但是我有一些不想读取的数据-因此,我需要该程序才能从特定的行开始读取文件。

我想要来自第10行之后的单元格和行的所有数据,直到文档为空。我已经尝试使用以下代码。

Workbook workbook = new XSSFWorkbook(inputStream);
    Sheet firstSheet = workbook.getSheetAt(0);

    Iterator<Row> iterator = firstSheet.iterator();
    Row getSchool = firstSheet.getRow(10);

    Iterator<Cell> cellIterator = getSchool.cellIterator();

    while (iterator.hasNext())
    {
        while (cellIterator.hasNext())
        {
         ...
        }
    }

但这只会给我第10行单元格中的所有数据。

我期待收到您的来信:-)。

迪亚巴克尔

您仅从此处的第11行获取数据:

Row getSchool = firstSheet.getRow(10);

请参阅Sheet.getRow(int rownum)的文档

返回从0开始的逻辑行(非物理行)。如果您要求未定义的行,则会得到一个空值。也就是说,第4行代表纸张上的第五行。

检查文档中有关如何遍历行和单元格的示例

您可以使用类似:

Workbook workbook = new XSSFWorkbook(inputStream);
Sheet firstSheet = workbook.getSheetAt(0);

for (Row row : firstSheet) {
  for (Cell cell : row) {
     // Do something here
  }
}

如果要遍历一行中的所有单元格,请检查如何遍历单元格,并控制丢失/空白的单元格

CellIterator只会返回该文件,这在很大程度上是那些具有价值或花式中定义的细胞,但它依赖于Excel中。

您可以将Row.MissingCellPolicy指定为:

Row.getCell(int, MissingCellPolicy)

这是一个例子:

int lastColumn = Math.max(row.getLastCellNum(), MY_MINIMUM_COLUMN_COUNT);

for (int cn = 0; cn < lastColumn; cn++) {
  Cell c = row.getCell(cn, Row.RETURN_BLANK_AS_NULL);
  if (c == null) {
    // The spreadsheet is empty in this cell
  } else {
    // Do something useful with the cell's contents
  }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

遍历Java中特定范围的行(Apache POI)

来自分类Dev

如何从QPlainTextEdit读取特定行

来自分类Dev

如何使用Apache POI删除行

来自分类Dev

使用Apache POI更改Word文件中的特定行

来自分类Dev

如何在Apache Poi上使用子表?

来自分类Dev

如何读取大型csv文件的特定行

来自分类Dev

如何在OSGi中使用Apache POI

来自分类Dev

如何读取文件的特定行?

来自分类Dev

如何从sparkContext读取特定行

来自分类Dev

使用Apache POI读取.docx文件

来自分类Dev

如何使用PowerShell使用参数读取特定的行值?

来自分类Dev

如何读取文件中的特定行?

来自分类Dev

如何使用BufferedWriter读取特定行

来自分类Dev

使用StreamReader读取特定行

来自分类Dev

如何使用Apache的POI以编程方式从Powerpoint演示文稿中读取图形值?

来自分类Dev

如何使读取文件超过特定行的条件?

来自分类Dev

如何使用Apache POI删除行

来自分类Dev

如何读取以特定开头的行

来自分类Dev

使用Apache_poi删除包含特定文本的Excel行

来自分类Dev

使用Apache POI更改Word文件中的特定行

来自分类Dev

如何在OSGi中使用Apache POI

来自分类Dev

无法使用Apache POI从Excel文件读取

来自分类Dev

如何从python中的特定行读取?

来自分类Dev

如何从大文件中读取特定行?

来自分类Dev

如何使用 Apache POI 读取 MS excel 文件?

来自分类Dev

如何使用 apache poi 禁用中间总数

来自分类Dev

无论系统日期格式如何,都使用 apache poi 从 excel 中以格式读取日期

来自分类Dev

如何使用Apache POI读取和搜索excel数据

来自分类Dev

如何使用 POI 库从 excel 中读取过滤的行