「java删除sheet」java删除sheet页方法

博主:adminadmin 2022-12-06 00:09:11 81

本篇文章给大家谈谈java删除sheet,以及java删除sheet页方法对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java中poi读取excel时报错:Unable to construct record instance,怎么解决呀?

根据你的截图,错误的可能有两个,要分别测试对应一下:

1、excel文档有问题,从截图下方看(就是乱码部分)可能excel文档的第1个sheet是个被删除的sheet,所以名称是很长的乱码,导致无法读取。

修改方法:创建一个新的excel文档,然后将需要的内容以文本的形式复制进去,再调用。

2、poi的问题,这个有可能是poi和excel的版本不对应。

修改方法:下载poi的时候确定清楚里面的hkec访问版本对应的是不是你的excel文件的版本。

java 写excel 文件的问题,写完后 就把原来的内容清除了

你现在的写法是先创建一个新文件叫“D:/1.xls”,如果此文件存在的话,就会覆盖

你得先把原来的文件读进来,然后再写出去

请问JAVA删除EXCEL中符合条件的一行怎么实现?

jxl没用过

我一般常用的是POI

POI可以remove指定的行,但这一行就变成了空白行,还要把下边的所有行向上移动一行

来实现删除功能。

Java jxl 清除Excel表格中的内容

for (int i = indexSheet.getFirstRowNum(); i indexSheet.getLastRowNum(); i++) {

indexSheet.removeRow(indexSheet.getRow(i));

}

这个是清除所有的,你将开始行改成2就行了

Excel隐藏了一个sheet表,java poi中是可以读出来的,现在我不想读取隐藏的sheet表。

我只回答“不想读取隐藏的sheet”的问题,

我也要类似的问题,a.xls 有7个sheet 可我用读取却出了10个 ,

原来的代码是 new 的HSSFWork ,这样会导致将隐藏的sheet 给显示出来

    FileInputStream fis = new FileInputStream(new File("E:/aa.xls"));

            Workbook wb = WorkbookFactory.create(fis);

            int sheetNums = wb.getNumberOfSheets();

            HSSFWorkbook tgWb = new HSSFWorkbook();

只要在原来的workBook 赋值给新的workbook即可,关键代码如下

   HSSFWorkbook tgWb = (HSSFWorkbook) wb;

下面给个例子:

例子是复制一个excel a.xls  到b.xls , 复制过程中将首行加粗,有内容的加网格,没有内容的去掉网格

    try {

            FileInputStream fis = new FileInputStream(new File("E:/aa.xls"));

            Workbook wb = WorkbookFactory.create(fis);

            int sheetNums = wb.getNumberOfSheets();

            HSSFWorkbook tgWb = (HSSFWorkbook) wb;

            // 首行样式

            CellStyle cellStyle = tgWb.createCellStyle();

            cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 下边框

            cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);// 左边框

            cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);// 上边框

            cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);// 右边框

            Font font = tgWb.createFont();

            font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);// 加粗

            cellStyle.setFont(font);

            // 其它行样式

            CellStyle cellStyle2 = tgWb.createCellStyle();

            cellStyle2.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 下边框

            cellStyle2.setBorderLeft(HSSFCellStyle.BORDER_THIN);// 左边框

            cellStyle2.setBorderTop(HSSFCellStyle.BORDER_THIN);// 上边框

            cellStyle2.setBorderRight(HSSFCellStyle.BORDER_THIN);// 右边框

            for (int i = 0; i  sheetNums; i++) {

                HSSFSheet hssfSheet = tgWb.getSheetAt(i);

                // 去除网格

                hssfSheet.setDisplayGridlines(false);

                // 多少列

                int rowNums = hssfSheet.getLastRowNum();

                for (int j = 0; j = rowNums; j++) {

                    HSSFRow hssfRow = hssfSheet.getRow(j);

                    int cellNums = hssfRow.getLastCellNum();

                    for (int k = 0; k  cellNums; k++) {

                        HSSFCell hssfCell = hssfRow.getCell(k);

                        if (hssfCell != null) {

                            if (j == 0) {

                                hssfCell.setCellStyle(cellStyle);

                            } else {

                                hssfCell.setCellStyle(cellStyle2);

                            }

                        }

                    }

                }

            }

            FileOutputStream fileOut = new FileOutputStream("E:/bb.xls");

            tgWb.write(fileOut);

            fileOut.close();

            wb.close();

            tgWb.close();

        } catch (FileNotFoundException e) {

            e.printStackTrace();

        } catch (Exception e) {

            e.printStackTrace();

        }

怎么用java的poi的工具包删除指定的单元格内容?(大神来看下吧,我只有10分了,太少,只求有人帮个忙)

在sheet对象里有删除行的方法。removeRow.

删除列的话,还是建议你用循环去处理。比如说,你在每一行getCell()的时候,跳过这个cell。

java删除sheet的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java删除sheet页方法、java删除sheet的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-06,除非注明,否则均为首码项目网原创文章,转载请注明出处。