使用java.util.zip压缩文件夹,支持加密,增加描述详解编程语言
2023-06-13 09:20:30 时间
public static void main(String args[]) throws IOException {
//zipFiles("D://zipTest","D://1.ZIP");
zipFilesWithPwd("D://zipTest","D://1.ZIP", "123456");
/**
* @param path 文件夹路径
* @param returnFileName
* @throws IOException
public static void zipFiles(String path, String returnFileName)
throws IOException {
File inFile = new File(path);
ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(
returnFileName));
zos.setComment("多文件处理");
zipFile(inFile, zos, "");
zos.close();
* 压缩时候加密..
public static void zipFilesWithPwd(String zipDir, String zipName,
String password) {
File file = new File(zipDir);
byte[] zipByte = ZipOutput
.getEncryptZipByte(file.listFiles(), password);
FileUtils.writeByteFile(zipByte, new File(zipName));
public static void zipFile(File inFile, ZipOutputStream zos, String dir)
throws IOException {
if (inFile.isDirectory()) {
File[] files = inFile.listFiles();
for (File file : files)
zipFile(file, zos, inFile.getName());
} else {
String entryName = null;
if (!"".equals(dir))
entryName = inFile.getName();
else
entryName = inFile.getName();
ZipEntry entry = new ZipEntry(entryName);
zos.putNextEntry(entry);
InputStream is = new FileInputStream(inFile);
int len = 0;
while ((len = is.read()) != -1)
zos.write(len);
is.close();
public static void deleteFile(File file) {
if (file.exists()) { // 判断文件是否存在
if (file.isFile()) { // 判断是否是文件
file.delete(); // delete()方法 你应该知道 是删除的意思;
} else if (file.isDirectory()) { // 否则如果它是一个目录
File files[] = file.listFiles(); // 声明目录下所有的文件 files[];
for (int i = 0; i files.length; i++) { // 遍历目录下所有的文件
deleteFile(files[i]); // 把每个文件 用这个方法进行迭代
file.delete();
} else {
System.out.println("所删除的文件不存在!" + /n);
}
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/10986.html
cjava相关文章
- java分层打印二叉树_基于Java的二叉树层序遍历打印实现
- java 除法取商_java除法怎样取小数部分「建议收藏」
- java jce_了解Java JCE的加密
- java中scanner意思_Java中的Scanner
- java源程序文件的扩展名_使用Java语言编写的源程序保存时的文件扩展名是什么…
- java循环语句_Java中的循环语句
- java applet介绍,Java Applet教程介绍[通俗易懂]
- java parrallel for,Java 8 parallel forEach进度指示
- java一个字符几个字节_Java 语言中一个字符占几个字节?
- 【说站】java Function怎么用?
- Java 零拷贝_java高性能编程
- java数组 初始化_用Java初始化数组「建议收藏」
- java url加密_Java实现url加密处理的方法示例
- Java字符串转集合_java集合转数组
- 【Java基础】JDK和JRE的安装+配置环境变量
- 请不要再说 Java 中 final 方法比非 final 性能更好了详解编程语言
- Zip加密Linux——安全保护你的数据(zip加密linux)
- Java 与 Linux 的结合:开启新时代(java和linux)
- 策略解决Java中Redis过期策略问题(redisjava过期)
- 时间设置Redis Java中设置过期时间的简单方法(redisjava过期)
- 深入学习:Linux下Java环境建设与配置(linux下java环境)
- Linux系统中下载Java的方法(linux下java下载)
- Java编程在Linux上的应用(java编程 linux)
- Oracle收购了Java一个伟大的转折点(java被oracle吗)
- 收购Oracle收购Java重新定义软件开发未来(java被oracle)
- Java更新提升Oracle软件性能(java更新oracle)
- 使用java实现http多线程断点下载文件(二)
- java旋转二维数组实例