W tym prostym temacie dowiesz się, jak zabezpieczyć hasłem plik XLSX za pomocą Java REST API. Opracujemy aplikację do szyfrowania pliku XLSX za pomocą Java Cloud API, wykonując szczegółowe i przejrzyste kroki wymienione w poniższej sekcji. Opracowaną aplikację można zintegrować z dowolną aplikacją obsługującą Javę w środowiskach Linux, macOS lub Windows, a konwersja może być wykonana bezpłatnie.
Warunek wstępny
Utwórz konto i uzyskaj dane uwierzytelniające API w celu zabezpieczenia hasłem XLSX przy użyciu Java REST API
Pobierać Aspose.Cells Cloud SDK for Java to encrypt XLSX file using Java Cloud API
Skonfiguruj projekt Java z powyższym zestawem SDK, aby renderować XLSX jako SVG
Kroki szyfrowania pliku XLSX przy użyciu interfejsu API Java Low Code
- Ustaw identyfikator klienta i klucz tajny klienta dla interfejsu API, aby zaszyfrować skoroszyt hasłem za pomocą interfejsu API Java REST
- Utwórz obiekt klasy CellsApi z danymi uwierzytelniającymi klienta, aby zabezpieczyć hasłem plik XLSX
- Określ nazwy plików źródłowych XLSX i załaduj plik źródłowy XLSX, używając nazwy i obiektu pliku w HashMap
- Utwórz instancję ProtectWorkbookRequest, aby ustawić hasło i inne właściwości
- Utwórz obiekt PostProtectRequest, aby ustawić pliki mapy i instancję ProtectWorkbookRequest
- Wywołaj metodę żądania postProtect, aby zaszyfrować plik XLSX przy użyciu interfejsu API Java low code
- Zapisz zaszyfrowane pliki XLSX na dysku lokalnym
Wspomniane kroki chronią hasłem XLSX za pomocą Java REST API. Rozpoczniemy proces od konfiguracji SDK i utworzenia instancji klasy CellsAPI. Następnie załadujemy plik/pliki źródłowe XLSX za pomocą HashMap i utworzymy instancję klas ProtectWorkbookRequest i PostProtectRequest, które są dalej używane do ustawiania ochrony hasłem dla plików XLSX za pomocą metody postProtect().
Kod do ochrony hasłem XLSX przy użyciu 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.xlsx"; | |
CellsApi protectXlsxtFileApi = new CellsApi(clientID, clientSecret, apiVersion, apiBaseUrl); | |
HashMap<String, File> mapFiles = new HashMap<>(); | |
mapFiles.put(inputFileName, new File(localPath + inputFileName)); | |
ProtectWorkbookRequest protectXlsxRequest = new ProtectWorkbookRequest(); | |
protectXlsxRequest.setEncryptWithPassword("test"); | |
protectXlsxRequest.setAwaysOpenReadOnly(true); | |
PostProtectRequest postProtectRequest = new PostProtectRequest(); | |
postProtectRequest.setFile(mapFiles); | |
postProtectRequest.setProtectWorkbookRequest(protectXlsxRequest); | |
FilesResult fileResult = protectXlsxtFileApi.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("XLSX 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()); | |
} | |
} | |
} |
Ten prosty przykładowy kod umożliwia zabezpieczenie hasłem XLSX za pomocą Java low code API. Musisz podać źródłowe pliki XLSX i hasło do zabezpieczenia wraz z innymi opcjonalnymi właściwościami. Po sformułowaniu komunikatu żądania, postProtect() wykonuje szyfrowanie pliku XLSX i zwraca chronione hasłem pliki XLSX, które mogą być przechowywane na dysku lub w bazie danych.
W tym temacie nauczyliśmy się szyfrować skoroszyt hasłem za pomocą Java REST API. Jeśli chcesz wykonać konwersję XLSX do PNG, zapoznaj się z artykułem na temat Konwertuj XLSX do PNG za pomocą Java REST API.