Neste tópico simples, você aprenderá como Proteger com senha o arquivo Excel usando a API Java REST. Desenvolveremos um aplicativo para criptografar o arquivo Excel usando a API Java Cloud seguindo as etapas detalhadas e lúcidas mencionadas na seção a seguir. O aplicativo desenvolvido pode ser integrado a qualquer aplicativo que suporte Java em ambientes Linux, macOS ou Windows e a conversão pode ser feita gratuitamente.
Pré-requisito
Crie uma conta e obtenha credenciais de API para proteger o Excel com senha usando a API REST Java
Download Aspose.Cells Cloud SDK for Java to encrypt Excel file using Java Cloud API
Configure o projeto Java com o SDK acima para proteger um arquivo XLS
Etapas para criptografar arquivo Excel usando Java Low Code API
- Defina o ID do cliente e o segredo do cliente para que a API criptografe a pasta de trabalho com uma senha usando a API REST Java
- Crie um objeto da classe CellsApi com credenciais de cliente para executar a proteção por senha de um arquivo XLS
- Especifique os nomes dos arquivos XLS de origem e carregue o XLS de origem usando um nome e um objeto File em um HashMap
- Crie uma instância do ProtectWorkbookRequest para definir a senha e outras propriedades
- Instanciar o objeto PostProtectRequest para definir os arquivos de mapa e a instância ProtectWorkbookRequest
- Chame o método de solicitação postProtect para criptografar arquivo Excel usando API Java de baixo código
- Salve o(s) arquivo(s) Excel criptografado(s) no disco local
As etapas acima mencionadas protegem o Excel com senha usando a API REST Java. Começaremos o processo com a configuração do SDK e a criação da instância da classe CellsAPI. Em seguida, carregaremos o(s) arquivo(s) XLS de origem usando um HashMap e criaremos uma instância das classes ProtectWorkbookRequest e PostProtectRequest que são usadas posteriormente para definir a proteção por senha para os arquivos do Excel usando o método postProtect().
Código para proteger o Excel com senha usando Java REST API
import com.aspose.cloud.cells.client.ApiException; | |
import com.aspose.cloud.cells.model.FileInfo; | |
import com.aspose.cloud.cells.model.FilesResult; | |
import com.aspose.cloud.cells.model.ProtectWorkbookRequest; | |
import com.aspose.cloud.cells.request.PostProtectRequest; | |
import java.io.File; | |
import java.io.FileInputStream; | |
import java.io.FileOutputStream; | |
import java.io.IOException; | |
import java.util.HashMap; | |
public class Example_PasswordProtectWorkbook { | |
public void Run() throws IOException, ApiException { | |
try { | |
String clientID = "ID"; | |
String clientSecret = "Secret"; | |
String apiBaseUrl = "https://api.aspose.cloud"; | |
String apiVersion = "v3.0"; | |
// Source and output file names | |
String localPath = "C:/ExcelFiles/"; | |
String inputFileName = "Source.xls"; | |
CellsApi protectXlstFileApi = new CellsApi(clientID, clientSecret, apiVersion, apiBaseUrl); | |
HashMap<String, File> mapFiles = new HashMap<>(); | |
mapFiles.put(inputFileName, new File(localPath + inputFileName)); | |
ProtectWorkbookRequest protectXlsRequest = new ProtectWorkbookRequest(); | |
protectXlsRequest.setEncryptWithPassword("test"); | |
protectXlsRequest.setAwaysOpenReadOnly(true); | |
PostProtectRequest postProtectRequest = new PostProtectRequest(); | |
postProtectRequest.setFile(mapFiles); | |
postProtectRequest.setProtectWorkbookRequest(protectXlsRequest); | |
FilesResult fileResult = protectXlstFileApi.postProtect(postProtectRequest); | |
for (FileInfo file : fileResult.getFiles()) { | |
try { | |
File destinationFile = new File(localPath + "protected_" + file.getFilename()); | |
// Create necessary parent directories | |
destinationFile.getParentFile().mkdirs(); | |
try (FileInputStream inputStream = new FileInputStream(file.getFileContent()); | |
FileOutputStream outputStream = new FileOutputStream(destinationFile)) { | |
byte[] buffer = new byte[4096]; // Buffer size of 4KB | |
int bytesRead; | |
while ((bytesRead = inputStream.read(buffer)) != -1) { | |
outputStream.write(buffer, 0, bytesRead); | |
} | |
System.out.println("XLS file writing completed"); | |
} catch (Exception e) { | |
e.printStackTrace(); | |
} | |
} | |
catch (Exception ex) { | |
System.out.println("An error occurred:" + ex.getMessage()); | |
} | |
} | |
} | |
catch (Exception ex) { | |
System.out.println("An error occurred:" + ex.getMessage()); | |
} | |
} | |
} |
Este código de exemplo simples permite que você proteja o Excel com senha usando a API Java low code. Você precisa fornecer os arquivos de origem do Excel e a senha para a proteção, juntamente com outras propriedades opcionais. Após formular a Request Message, postProtect() executa a criptografia no arquivo do Excel e retorna os arquivos do Excel protegidos por senha que podem ser armazenados no disco ou dentro do banco de dados.
Aprendemos a criptografar Workbook com Senha usando Java REST API neste tópico. Se você quiser realizar a conversão de Excel para PNG, consulte o artigo sobre como Converter Excel para PNG com Java REST API.