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

如何使用Apache POI浏览工作簿的工作表?

何晗昱
2023-03-14

我是一个真正的新手程序员,试图用Apache Poi为一个朋友制作一个编辑电子表格的小java程序。目前,我使用以下代码浏览excel文件:

Sheet paxgs = rs1.getSheetAt(0); 
for (Row row : paxgs) {
       Cell secCell = row.getCell(1);
       Cell firstCell = row.getCell(0);
       if (firstCell!=null && firstCell.getCellType()==firstCell.CELL_TYPE_STRING)
}

问题是我不知道 excel 文件将具有的确切工作表数。我试过了:

Workbook rs1 = WorkbookFactory.create(new FileInputStream(filename));    
for (Sheet sheet : rs1)

但它不起作用,所以我想知道是否有任何方法可以浏览工作簿的所有工作表。

共有2个答案

蓝飞
2023-03-14

工作簿包含一个受保护的字段“_sheets”,其类型为java.util。这样列出:-

 rs1._sheets.size();

应该给你张数。您还应该能够遍历此列表。

宗冠宇
2023-03-14

工作簿未实现迭代

for (int i = 0; i < workbook.getNumberOfSheets(); i++)
{
    Sheet sheet = workbook.getSheetAt(i);
    // Process your sheet here.
}

 类似资料:
  • 我使用这段代码将工作簿中的每一张工作表复制到一个新的工作簿中,它工作得很好,但它颠倒了工作表的顺序,是否有任何办法阻止它这样做? 我正在复制所有的工作表,这样我就可以将它保存为不同的文件扩展名,这是我发现唯一有效的方法。

  • 这里的术语“工作簿”表示Microsoft Excel文件。 完成本章后,您将能够使用Java程序创建新的工作簿并打开现有的工作簿。 创建空白工作簿 以下简单程序用于创建空白Microsoft Excel工作簿。 import java.io.*; import org.apache.poi.xssf.usermodel.*; public class CreateWorkBook { pu

  • 所以在问这个之前,我搜索并发现了一些与我在这里想要做的相似的事情。 基本上我有工作簿AlphaMaster。这个工作簿是一个模板,我想用它来创建每周的新工作簿。 在本工作簿中,有名为“周一至周六”的工作表,以及带有相应日期的周一、周二等其他工作表。 我创建了一个在打开工作簿时加载的表单。我想要的是当我单击表单运行时,它将: > 将代码保存模板作为新工作簿运行 根据userform1的输入重命名工作

  • 试图从当前工作簿“Create Report.xlsm”中复制工作表名称“Headings Explantions”,该工作簿打开到我要求打开的工作簿中,我得到了下标超出范围的错误

  • 我得到了这个错误: 工作簿已包含此名称的工作表 行应该检查工作簿是否已经包含此名称的工作表,但它不工作。我仍然有错误。 谢谢你的帮助!

  • MATLAB工作空间包含内建MATLAB处理任务时以及储存在记忆体中的变量排列。你可以通过使用函数、运行M-文件、装载已存文件等方式增加变量到工作区。 要查看关于每个变量的工作空间和信息,请用工作空间浏览器,或用who和whos函数。 要在工作空间删除一个变量,先选择那个变量,然后从Edit菜单中选择Delete,或者用clear命令。 当你退出MATLAB后,工作空间的内容是不会继续存在的。如果