用Java代码保护和取消保护Excel文件

♀尐吖头ヾ 提交于 2021-01-14 16:04:32

Excel文件用于以行和列的形式存储小型和大型数据。除了数据存储,还可以执行其他操作,例如使用图形和图表进行计算和数据分析。由于数据值得保护,因此MS Excel允许保护Excel文件。

本文介绍如何以编程方式自动保护MS Excel文件。特别是,将学习如何使用Java保护和取消保护Excel文件。

  • 使用Java保护Excel文件
  • 使用Java取消保护Excel文件
  • 使用Java保护工作表
  • 使用Java取消保护工作表

Aspose.Cells for Java是一种众所周知的电子表格处理API,旨在从Java应用程序内部创建,编辑和转换Excel文件。除其他基本和高级Excel自动化功能外,Aspose.Cells还支持保护Excel文件。点击下方按钮可下载试用。(点击下载

使用Java保护Excel文件

Aspose.Cells for Java提供以下保护类型以保护Excel工作簿。

  • ALL——用户无法修改任何内容
  • CONTENTS——用户无法输入数据
  • OBJECTS——用户无法修改图形对象
  • SCENARIOS——用户不能修改保存的方案
  • STRUCTURE——用户无法修改保存的结构
  • WINDOWS——用户无法修改已保存的窗口
  • NONE——无保护

以下是使用Aspose.Cells for Java保护Excel文件的步骤。

  • 使用Workbook类加载Excel文件。
  • 使用Workbook.protect(ProtectionType,String)方法来保护Excel文件。
  • 使用Workbook.save(String)方法保存受保护的文件。

下面的代码示例演示如何使用Java保护Excel文件。

// Open the Excel file
Workbook workbook = new Workbook("workbook.xlsx");

// Protect workbook by specifying protection type
workbook.protect(ProtectionType.ALL, "12345");

// Save the file
workbook.save("workbook_protected.xlsx");

使用Java取消保护Excel文件

以下是使用Aspose.Cells for Java取消保护受密码保护的Excel文件的步骤。

  • 使用Workbook类加载Excel文件。
  • 使用Workbook.unprotect(String)方法取消保护Excel文件。
  • 使用Workbook.save(String)方法保存不受保护的Excel文件。

以下代码示例显示了如何在Java中取消保护Excel文件。

// Open the Excel file
Workbook workbook = new Workbook("workbook_protected.xlsx");

// Unprotect workbook
workbook.unprotect("12345");

// Set password to null
workbook.getSettings().setPassword(null);

// Save the file
workbook.save("workbook_unprotected.xlsx");

使用Java保护Excel工作表

可以在工作表级别应用保护。以下是使用Aspose.Cells for Java保护Excel工作表的步骤。

  • 使用Workbook类加载Excel文件。
  • 使用Workbook.getWorksheets()。get(int)方法获取Worksheet对象中的特定工作表。
  • 使用Worksheet.getProtection()方法将工作表保护设置获取到Protection对象中。
  • 使用Protection.setPassword(String)方法设置密码。
  • 使用Workbook.save(String)方法保存Excel文件。

下面的代码示例演示如何使用Java保护Excel工作表。

// Open the Excel file
Workbook workbook = new Workbook("workbook.xlsx");

// Accessing the first worksheet in the Excel file
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0);

Protection protection = worksheet.getProtection();

// The following 3 methods are only for Excel 2000 and earlier formats
protection.setAllowEditingContent(false);
protection.setAllowEditingObject(false);
protection.setAllowEditingScenario(false);

// Protect the first worksheet with a password "1234"
protection.setPassword("1234");

// Save the file
workbook.save("Excel.xlsx");

使用Java取消保护工作表

取消保护工作表的步骤与保护工作表的步骤相同。唯一的区别是,您将使用Worksheet.unprotect(String)方法。下面的代码示例演示如何使用Java取消保护Excel工作表。

// Open the Excel file
Workbook workbook = new Workbook("workbook.xlsx");

// Accessing the first worksheet in the Excel file
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0); 

// Unprotect worksheet
worksheet.unprotect("12345");

// Save the file
workbook.save("workbook_updated.xlsx");
workbook.save("Excel-to-HTML.html", options);

如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!