Proteger arquivos do Excel em Java

Os arquivos do Excel são usados para armazenar dados pequenos e grandes na forma de linhas e colunas. Juntamente com o armazenamento de dados, você pode realizar outras operações, como cálculos e análise de dados, usando gráficos e tabelas. Como vale a pena proteger os dados, o MS Excel permite proteger os arquivos do Excel. Este artigo aborda como automatizar a proteção de arquivos do MS Excel programaticamente. Particularmente, você aprenderá como proteger e desproteger arquivos do Excel usando Java.

API Java para proteger arquivos do Excel

Aspose.Cells for Java é uma API de manipulação de planilhas bem conhecida que foi projetada para criar, editar e converter arquivos Excel de dentro dos aplicativos Java. Juntamente com outros recursos básicos e avançados de automação do Excel, o Aspose.Cells suporta a proteção dos arquivos do Excel. Você pode baixar o JAR da API ou instalá-lo usando a seguinte configuração do Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>20.12</version>
</dependency>

Proteja arquivos do Excel usando Java

Aspose.Cells para Java fornece os seguintes tipos de proteção para proteger as pastas de trabalho do Excel.

  • TUDO - User cannot modify anything
  • CONTEÚDO - User cannot enter data
  • OBJETOS - User cannot modify drawing objects
  • CENÁRIOS - User cannot modify saved scenarios
  • ESTRUTURA - User cannot modify saved structure
  • JANELAS - User cannot modify saved windows
  • NENHUM - No protection

A seguir estão as etapas para proteger um arquivo do Excel usando Aspose.Cells para Java.

O exemplo de código a seguir mostra como proteger um arquivo do Excel em Java.

// Abra o arquivo Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Proteja a pasta de trabalho especificando o tipo de proteção
workbook.protect(ProtectionType.ALL, "12345");

// Salve o arquivo
workbook.save("workbook_protected.xlsx");

Desproteger arquivos do Excel usando Java

A seguir estão as etapas para desproteger um arquivo do Excel protegido por senha usando Aspose.Cells para Java.

O exemplo de código a seguir mostra como desproteger um arquivo do Excel em Java.

// Abra o arquivo Excel
Workbook workbook = new Workbook("workbook_protected.xlsx");

// Desproteger pasta de trabalho
workbook.unprotect("12345");

// Definir senha como nula
workbook.getSettings().setPassword(null);

// Salve o arquivo
workbook.save("workbook_unprotected.xlsx");

Proteja planilhas do Excel usando Java

Você também pode aplicar proteção no nível da planilha. A seguir estão as etapas para proteger uma planilha do Excel usando Aspose.Cells para Java.

O exemplo de código a seguir mostra como proteger uma planilha do Excel usando Java.

// Abra o arquivo Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Acessando a primeira planilha no arquivo Excel
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0);

Protection protection = worksheet.getProtection();

// Os 3 métodos a seguir são apenas para formatos Excel 2000 e anteriores
protection.setAllowEditingContent(false);
protection.setAllowEditingObject(false);
protection.setAllowEditingScenario(false);

// Proteja a primeira planilha com uma senha "1234"
protection.setPassword("1234");

// Salve o arquivo
workbook.save("Excel.xlsx");

Desproteger planilhas usando Java

O procedimento de desproteger uma planilha é o mesmo que proteger uma. A única diferença é que você usará o método Worksheet.unprotect(String). O exemplo de código a seguir mostra como desproteger uma planilha do Excel usando Java.

// Abra o arquivo Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Acessando a primeira planilha no arquivo Excel
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0); 

// Desproteger planilha
worksheet.unprotect("12345");

// Salve o arquivo
workbook.save("workbook_updated.xlsx");

Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita para experimentar as APIs sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como proteger e desproteger arquivos do Excel usando Java. Além disso, você viu como proteger e desproteger uma planilha específica em uma pasta de trabalho do Excel. Você pode explorar mais sobre a API de automação Java Excel usando documentação.

Veja também