Я использовал zip4j и смог обеспечить защиту паролем только на уровне файла.
Код: Выделить всё
import java.io.File;
import net.lingala.zip4j.ZipFile;
import net.lingala.zip4j.exception.ZipException;
import net.lingala.zip4j.model.ZipParameters;
import net.lingala.zip4j.model.enums.EncryptionMethod;
public class ZipWithPasswordExample {
public static void main(String[] args) {
// Source folder to be zipped
String sourceFolderPath = "";
// Destination zip file path
String destinationZipFilePath = ".zip";
// Password for encryption
String password = "
";
try {
// Create a new ZipFile object
ZipFile zipFile = new ZipFile(destinationZipFilePath, password.toCharArray());
// Parameters for creating the zip file
ZipParameters parameters = new ZipParameters();
parameters.setEncryptFiles(true);
parameters.setEncryptionMethod(EncryptionMethod.ZIP_STANDARD);
// Add folder to the zip file
File sourceFolder = new File(sourceFolderPath);
zipFile.addFolder(sourceFolder, parameters);
System.out.println("Folder successfully zipped and encrypted!");
} catch (ZipException e) {
e.printStackTrace();
}
}
}
Вот мой код, который выполняет архивирование и защита паролем на уровне файла.
Я нашел некоторые важные вопросы из прошлого и опробовал решение, но оно кажется устаревшим, и во многих решениях, которые я пробовал, использовались методы, которые сейчас устарели.< /p>
Было бы полезно, если бы кто-нибудь предложил решение, как можно реализовать эту защиту на уровне папки, или есть ли какие-либо другие библиотеки, которые могут выполнить эту работу.
Заранее спасибо.
Подробнее здесь: https://stackoverflow.com/questions/785 ... using-java
Мобильная версия