Java操作Excel:book保护

来源:互联网 发布:mac推荐医学app 编辑:程序博客网 时间:2024/06/05 05:46

    Excel的book保护是很常用的,主要是不想让别人修改Excel的时候用。这样能够避免恶意随便修改数据,提高数据的可信度。

    那么JAVA来实现设置book保护怎么做呢?

    查找了几种常见的JAVA操作Excel的一些包,大体结果如下:

    1. POI

        POI的HSSFWorkbook类有writeProtectWorkbook(password, username)。这边可以设置密码和是谁保护的,但这个顾名思义就是写保护,实现的效果和Excel的book保护有出入。

        当然,sheet保护的话用HSSFSheet类的protectSheet(password)方法就可以了。

 

    2. JXL

         Workbook类的setProtected(boolean)方法感觉是用来做book保护的,但看了说明是设置sheet保护的。因此也是实现不了book保护的效果。

 

   3. OpenXLS

        最后好不容易找到了这个包。WorkBook的setProtected(true)方法设置后就实现了book保护。代码如下:

        // read file
        WorkBook workbook = new WorkBookHandle(new FileInputStream(new File("d:/openxlsTest.xls")));
        // protect
        workbook.setProtected(true);   
        // write file
        workbook.writeBytes(new FileOutputStream(new File("d:/openxlsProtect.xls")));

 

book保护后的效果,sheet不能增加,删除等