gpt4 book ai didi

java - 使用 Apache Poi 从 Excel 工作簿中删除工作表后,还剩下一个工作表吗?

转载 作者:行者123 更新时间:2023-11-30 04:59:14 25 4
gpt4 key购买 nike

我正在使用 workbook.removeSheetAt() 从工作簿中删除某个指定的工作表。但是,工作簿在将其写入磁盘后包含一个名为“Sheet3”的新工作表。是什么赋予了?我不会在代码中的任何地方创建这个新工作表。注意:我正在使用 XSSFWorkbook 和所有其他 XSSF 内容。

更多信息:以下是输出 xlsx 内的 workbook.xml 的片段。我正在删除索引=2、表面上sheetId=3 的工作表。我开始使用的模板工作簿只有四张纸。

<sheets>
<sheet r:id="rId1" sheetId="1" name="Sheet1"/>
<sheet r:id="rId2" sheetId="2" name="Params" state="hidden"/>
<sheet r:id="rId4" sheetId="4" name="Warnings" state="hidden"/>
<sheet r:id="rId3" sheetId="5" name="Sheet3"/>
</sheets>

最佳答案

Apache POI 使用基于索引的工作表(有点像数组)。如果位置大于 x 的工作表,则位置 x 处一定存在工作表,即使它是空白的。您可以尝试使用 setSheetOrder 将 n > x 的工作表移动到位置 n - 1

似乎有一个与此类似的错误报告:Bug Report

隐藏工作表怎么样:setSheetHidden

关于java - 使用 Apache Poi 从 Excel 工作簿中删除工作表后,还剩下一个工作表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7502161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com