Java 设置Excel工作表为只读

Posted 技术永远的神

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 设置Excel工作表为只读相关的知识,希望对你有一定的参考价值。

Excel

Excel工作表中可通过文档加密的方式来设置文档保护,可设置文档打开密码、工作表限制编辑密码。当需要设置文档内容仅供查看而无法编辑时,可针对sheet表格来设置内容为只读。下面,通过Java程序代码展示如何设置Excel工作表为只读模式。

Java 程序环境如下:

代码编译工具:IntelliJ IDEA

Excel测试文档:.xlsx 2013

Excel类库工具:free spire.xls.jar 3.9.1

Jdk版本:1.8.0

Jar导入游戏结果如图:

程序代码

import com.spire.xls.*;

public class ReadOnly {

 public static void main(String[] args) {
     //加载Excel工作簿文档
     Workbook wb = new Workbook();
     wb.loadFromFile("sample.xlsx");

     //遍历工作表
     for(int i = 0; i<wb.getWorksheets().getCount();i++)
     {
         Worksheet sheet = wb.getWorksheets().get(i);//获取所有工作表
         sheet.protect("123456");//设置允许编辑的密码
         sheet.setProtectContents(true);//设置内容保护(只读)
     }

     //保存文档
     wb.saveToFile("ReadOnly.xlsx");
     wb.dispose();
 }

}
执行程序,生成文档,如图效果:

代码中的测试文件和结果文件路径为IDEA项目文件夹路径,www.sangpi.com的文件路径可另行自定义。

以上是关于Java 设置Excel工作表为只读的主要内容,如果未能解决你的问题,请参考以下文章

Oracle设置某张表为只读

excel中使用vba以只读方式打开工作薄的操作方法

Java生成excel设置时间权限

在 VBA 中使用 SQL 连接两个 Excel 工作簿中的数据(只读错误)

Handsontable指定列设置为只读的问题

使用 VBA 将 MS Access 记录集导出到 Excel 中的多个工作表/选项卡会生成只读文件