4

我尝试使用以下方法删除单元格:

HSSFCell cell = sheet.getRow(0).getCell(i);
sheet.getRow(0).removeCell(cell);

我认为这应该有明确的价值,但单元格的值刚刚从“012345678”更改为“0”。单元格类型始终为字符串。

此外,该单元格有评论,也没有被删除。然后我在上面两个之间添加这个语句:

cell.removeCellComment();

它没有用。有什么我忘记做的吗?提前致谢。

4

3 回答 3

2

我看不出你的代码有什么问题。删除单元格后,您是否记得保存更改?以下代码对我来说很好。

String xlsxPath = "C:\\path\\test.xlsx";

Workbook wb = WorkbookFactory.create(new FileInputStream(xlsxPath));

// get first row
Row row = wb.getSheetAt(0).getRow(0);

// remove second cell from first row
row.removeCell(row.getCell(1));

// save changes
FileOutputStream fileOut = new FileOutputStream(xlsxPath);
wb.write(fileOut);
fileOut.close();
于 2012-09-06T15:13:06.500 回答
0

您可以尝试将单元格值设置为 null 或空字符串。

于 2012-09-06T16:22:59.240 回答
0

我也是同样的问题,我的解决方案没什么新意,就是复制表格并排除您需要的原始表格的单元格,然后删除原始表格

        int originalTablePos = paragrah.getDocument().getPosOfTable(Original_Table);
        // copy table from original to new table
        paragrah.getDocument().removeBodyElement(originalTablePos);

我希望这可以帮助其他有同样问题的人

问候

于 2020-05-21T09:53:15.957 回答