当前位置: 首页 > 知识库问答 >
问题:

计算从特定索引到最后一行的excel行数-Apache POI

欧阳昊焱
2023-03-14
for (int i = 0; i < loc1.workbook.getNumberOfSheets(); i++) {
    if (loc2.workbook.getNumberOfSheets() <= i) return;

    loc1.sheet = loc1.workbook.getSheetAt(i);
    loc2.sheet = loc2.workbook.getSheetAt(i);

    int num1 = loc1.sheet.getPhysicalNumberOfRows();
    int num2 = loc2.sheet.getPhysicalNumberOfRows();
}

如何计算从特定索引开始的行数?上面的代码计算行的总数。loc1和loc2是包含工作簿、工作表、行和单元格变量的类的ref变量。

共有2个答案

齐英耀
2023-03-14

可以使用迭代器读取该行。

int indexStart = 1;
Iterator<Row> rows = sheet.rowIterator();
while ( rows.hasNext() ) {
   Row row = rows.next();

   if( row.getRowNum() < indexStart  ) {
      continue;
   }

// your code
}
怀浩大
2023-03-14

这可能有点愚蠢(也许我不明白物理行和逻辑行之间的区别),但是

getPhysicalNumberOfRows() - specific_index;
 类似资料:
  • 问题内容: 我的问题是我希望flexbox的范围宽度可变,并且一切正常,但不在最后一行。我希望所有孩子都具有相同的尺寸,即使行中没有孩子(最后一行)也没有。 我的flex div可以缩小到150像素,最大可以增长到250像素,但是所有像素都必须具有相同的大小(很明显,我想要CSS解决方案,我知道用JS)。 问题答案: 不幸的是,在当前的flexbox迭代(级别1)中,没有干净的方法来解决最后一行的

  • 问题内容: 有什么方法可以简化此代码,以获取提供的某一列的索引以获取特定行的索引吗?在这种情况下,索引将为,因为我要遍历第一列直到找到“ A”。感觉应该对此有一个linq解决方案,但我无法弄清楚。 问题答案: 如果使用DataTableExtensions.AsEnumerable()方法,则可以使用LINQ查询您的DataTable。然后,您可以用来确定给定谓词的索引:

  • 在执行group-by之后,我的新df有3级multindex。我需要访问所有带有“ZEBRA”标签的行;它包含在第3级索引中。我正在尝试使用,但无法这样做。我想遍历标签,但这必须是一个嵌套循环才能在下面进行;这让我觉得我没有沿着正确的思路思考,肯定会更容易。 这个问题看起来很接近-按索引选择多索引数据帧中的行而不丢失任何级别,但重点关注第一级索引。 期望:

  • 我想用熊猫数某列的行数。我有这样的DataFrame: 我想计算列B中的行数,我的代码如下: 但是不管什么我都会把它放在最长列的行号上。 我应该在代码中更改什么来获得列B的行数o,但没有空行?

  • 我有两个形状相同的python数据帧,例如: 我想使用df2中的值作为行索引来选择df1中的值,并创建一个形状相等的新数据帧。预期结果: 我已尝试使用.loc,它在单个列中运行良好: 但是我不能同时在所有列上使用. loc或. iloc。我想避免循环来优化性能,因为我正在处理一个大数据帧。有什么想法吗?

  • 给定一个非负整数数组,您最初位于数组的第一个索引处。 数组中的每个元素表示该位置的最大跳跃长度。 您的目标是以最少的跳跃次数达到最后一个索引。 例如:给定数组 到达最后一个指数的最小跳跃次数为2次。(从索引0跳转1步到1,然后3步到最后一个索引。) 我已经从左到右构建了一个dp[]数组,以便dp[i]指示从arr[0]到达arr[i]所需的最小跳转次数。最后,我们返回dp[n-1]。 我的代码的最