MS Excel cung cấp cho bạn một loạt các tính năng để lưu giữ và phân tích dữ liệu một cách liền mạch. Bạn có thể thực hiện tính toán, tạo biểu đồ cũng như xác định logic tùy chỉnh của mình bằng cách sử dụng các mô-đun VBA. Biết tầm quan trọng của dữ liệu trong bảng tính, MS Excel cho phép bạn bảo vệ sổ làm việc bằng cách sử dụng mã hóa. Hơn nữa, bạn có thể bảo vệ bằng mật khẩu các tệp Excel để tránh bị truy cập trái phép. Theo đó, bài viết này trình bày cách mã hóa / giải mã và bảo vệ bằng mật khẩu các tệp Excel bằng Java.
- API Java để mã hóa và giải mã tệp Excel
- Mã hóa tệp Excel bằng Java
- Giải mã tệp Excel bằng Java
- Xác minh mật khẩu của tệp Excel được mã hóa
- Nhận giấy phép API miễn phí
API Java để mã hóa và giải mã tệp Excel
Aspose.Cells for Java là một API thao tác bảng tính mạnh mẽ cho phép bạn tạo và thao tác các tệp Excel một cách liền mạch. Hơn nữa, nó cho phép bạn mã hóa và giải mã các sổ làm việc trong vòng một vài dòng mã. Ngoài ra, bạn có thể bảo vệ tệp Excel bằng mật khẩu. Aspose.Cells for Java có thể được tải xuống dưới dạng JAR hoặc được cài đặt bằng cách sử dụng các cấu hình Maven sau.
<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>
Mã hóa tệp Excel bằng Java
Aspose.Cells for Java cung cấp các kiểu mã hóa sau cho các tệp Excel 2003.
- XOR
- TƯƠNG THÍCH(Office 97/2000 compatible)
- NHÀ CUNG CẤP HÌNH ẢNH NÂNG CAO V1
- NHÀ CUNG CẤP HÌNH ẢNH MẠNH MẼ
Tuy nhiên, sổ làm việc 2007/2010 được mã hóa bằng kỹ thuật mã hóa SHA và AES giống như cách MS Excel làm. Sau đây là các bước để mã hóa tệp Excel bằng Aspose.Cells for Java.
- Tải tệp Excel bằng lớp Workbook.
- Đặt mật khẩu bằng phương thức Workbook.getSettings(). SetPassword (string).
- Mã hóa tệp Excel bằng phương pháp Workbook.setEncryptionOptions (EncryptionType, int).
- Lưu sổ làm việc được mã hóa bằng phương pháp Workbook.save (string).
Để minh họa, mẫu mã sau đây cho thấy cách mã hóa tệp Excel bằng Java.
// Khởi tạo một đối tượng Workbook bằng đường dẫn tệp excel
Workbook workbook = new Workbook("workbook.xlsx");
// Mật khẩu bảo vệ tệp
workbook.getSettings().setPassword("1234");
// Mã hóa bằng cách chỉ định loại mã hóa
workbook.setEncryptionOptions(EncryptionType.XOR, 40);
// Chỉ định loại mã hóa mạnh (RC4, Microsoft Strong Cryptographic Provider)
workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128);
// Lưu tệp Excel được mã hóa
workbook.save("encrypted-workbook.xlsx");
Giải mã tệp Excel bằng Java
Để giải mã một tệp Excel đã mã hóa, bạn chỉ cần cung cấp mật khẩu của nó và phần còn lại sẽ được xử lý bởi Aspose.Cells for Java. Sau đây là các bước để giải mã một tệp Excel bằng Java.
- Tạo một thể hiện của lớp LoadOptions.
- Chỉ định mật khẩu bằng phương thức LoadOptions.setPassword (string).
- Tạo một thể hiện của lớp Workbook và chuyển đường dẫn của tệp và đối tượng LoadOptions tới phương thức khởi tạo của nó.
- Đặt mật khẩu thành null bằng phương thức Workbook.getSettings(). SetPassword (string).
- Sau khi hoàn tất, hãy lưu sổ làm việc đã giải mã bằng phương thức Workbook.save (string).
Mẫu mã sau đây cho thấy cách giải mã tệp Excel được bảo vệ bằng mật khẩu bằng Java.
// Khởi tạo các tùy chọn tải
LoadOptions loadOptions = new LoadOptions(LoadFormat.XLSX);
// Đặt mật khẩu ban đầu
loadOptions.setPassword("1234");
// Khởi tạo một đối tượng Workbook với đường dẫn của tệp Excel
Workbook workbook = new Workbook("encrypted-workbook.xlsx", loadOptions);
// Đặt mật khẩu thành null
workbook.getSettings().setPassword(null);
// Lưu tệp Excel đã giải mã
workbook.save("decrypted-workbook.xlsx");
Xác minh mật khẩu của tệp Excel được mã hóa
Ngoài mã hóa / giải mã, Aspose.Cells for Java còn cho phép bạn xác minh mật khẩu của tệp Excel được bảo vệ. Sau đây là các bước để thực hiện xác minh mật khẩu.
- Tải tệp Excel đã mã hóa bằng lớp FileInputStream.
- Sử dụng phương thức FileFormatUtil.verifyPassword (FileInputStream, string) để xác minh mật khẩu.
- Kết quả là, nếu giá trị trả về là true thì mật khẩu là hợp lệ, nếu không thì mật khẩu không hợp lệ.
Mẫu mã sau đây cho thấy cách xác minh mật khẩu của tệp Excel được mã hóa bằng Java.
// Tạo đối tượng Luồng
FileInputStream fstream = new FileInputStream("encrypted-workbook.xlsx");
// Xác nhận mật khẩu
boolean isPasswordValid = FileFormatUtil.verifyPassword(fstream, "1234");
// In kết quả
System.out.println("Password is Valid: " + isPasswordValid);
Nhận giấy phép API miễn phí
Trong trường hợp bạn muốn dùng thử API mà không có giới hạn đánh giá, bạn có thể nhận giấy phép tạm thời miễn phí.
Sự kết luận
Trong bài viết này, bạn đã học cách mã hóa hoặc giải mã các tệp Excel bằng Java. Hơn nữa, bạn đã thấy cách xác minh mật khẩu của tệp Excel được mã hóa. Trong trường hợp bạn muốn khám phá thêm về API thao tác bảng tính Java, hãy truy cập tài liệu.