zoukankan      html  css  js  c++  java
  • POI删除Excel的sheet页

    POI删除Excel的sheet页

    poi有删除一个sheet页的方法,我希望除了一个sheet页之外其他的都删除,但是使用的时候发现,删除之后经常会出现文件破坏的提示,研究发现,是由于excel有一个默认的当前页功能。

    比如表格中有3个sheet页,保存的时候默认显示的是第三页,那么删除两页之后,表格只剩一页,打开的时候表格会显示第三页失败,就会提示文件损坏。。

    遇到这种情况,有两种方法:

    1. 将表格默认显示的页改为第一页再处理
    2. 使用代码修改默认页。

    此方法删除表格中除了传入的页之外所有的页

        /**
         * 删除模板表格(除了 id之外所有的)
         */
        public static void removeModelSheet(Workbook wb, int id) {
            int numberOfSheets = wb.getNumberOfSheets();
            for (int i = numberOfSheets - 1; i > -1; i--) {
                if (i != id) {
                    wb.removeSheetAt(i);
                }
            }
            //设置默认显示第一页
            wb.setActiveSheet(0);
        }
        /**
         * 删除模板表格(除了 name之外所有的)
         */
        public static void removeModelSheet(Workbook wb, String name) {
            int sheetIndex = wb.getSheetIndex(wb.getSheet(name));
            removeModelSheet(wb,sheetIndex);
        }
        /**
         * 删除模板表格(除了 noDelSheet之外所有的)
         */
        public static void removeModelSheet(Workbook wb, Sheet noDelSheet) {
            int sheetIndex = wb.getSheetIndex(noDelSheet);
            removeModelSheet(wb,sheetIndex);
        }
    
  • 相关阅读:
    learning.py报错
    Swift与OC的相互调用
    微信小程序地图之逆地理编码
    微信小程序-滑动视图注意事项
    animate.css动画种类
    利用WKWebView实现js与OC交互注意事项
    jquey下eq()的使用注意事项
    如何判断html页面停止滚动?
    git 常见报错
    openresty中http请求body数据过大的处理方案
  • 原文地址:https://www.cnblogs.com/ziyue7575/p/12515903.html
Copyright © 2011-2022 走看看