java解压rar.zip

Java 暴力破解zip压缩包密码 1、引用zip4j包 <dependency> <groupId>net.lingala.zip4j</groupId> <artifactId>zip4j</artifactId> <version>1.3.2</version> </dependency> 2、获取所有可能的密码集合 package com.yymagicer.util; import java.util. 阅读详情

/**  
    * 解压zip格式压缩包  
    * 对应的是ant.jar  
    */   
   private static void unzip(String sourceZip,String destDir) throws Exception{    
       try{    
           Project p = new Project();    
           Expand e = new Expand();    
           e.setProject(p);    
           e.setSrc(new File(sourceZip));    
           e.setOverwrite(false);    
           e.setDest(new File(destDir));    
           /*  
           ant下的zip工具默认压缩编码为UTF-8编码,  
           而winRAR软件压缩是用的windows默认的GBK或者GB2312编码  
           所以解压缩时要制定编码格式  
           */   
           e.setEncoding("gbk");    
           e.execute();    
       }catch(Exception e){    
           throw e;    
       }    
   }    
   /**  
    * 解压rar格式压缩包。  
    * 对应的是java-unrar-0.3.jar,但是java-unrar-0.3.jar又会用到commons-logging-1.1.1.jar  
    */   
   private static void unrar(String sourceRar,String destDir) throws Exception{    
       Archive a = null;    
       FileOutputStream fos = null;    
       try{    
           a = new Archive(new File(sourceRar));    
           FileHeader fh = a.nextFileHeader();    
           while(fh!=null){    
               if(!fh.isDirectory()){    
                   //1 根据不同的操作系统拿到相应的 destDirName 和 destFileName     
                   String compressFileName = fh.getFileNameString().trim();    
                   String destFileName = "";    
                   String destDirName = "";    
                   //非windows系统     
                   if(File.separator.equals("/")){    
                       destFileName = destDir + compressFileName.replaceAll("\\\\", "/");    
                       destDirName = destFileName.substring(0, destFileName.lastIndexOf("/"));    
                   //windows系统      
                   }else{    
                       destFileName = destDir + compressFileName.replaceAll("/", "\\\\");    
                       destDirName = destFileName.substring(0, destFileName.lastIndexOf("\\"));    
                   }    
                   //2创建文件夹     
                   File dir = new File(destDirName);    
                   if(!dir.exists()||!dir.isDirectory()){    
                       dir.mkdirs();    
                   }    
                   //3解压缩文件     
                   fos = new FileOutputStream(new File(destFileName));    
                   a.extractFile(fh, fos);    
                   fos.close();    
                   fos = null;    
               }    
               fh = a.nextFileHeader();    
           }    
           a.close();    
           a = null;    
       }catch(Exception e){    
           throw e;    
       }finally{    
           if(fos!=null){    
               try{fos.close();fos=null;}catch(Exception e){e.printStackTrace();}    
           }    
           if(a!=null){    
               try{a.close();a=null;}catch(Exception e){e.printStackTrace();}    
           }    
       }    
   }    
   /**  
    * 解压缩  
    */   
   public static void deCompress(String sourceFile,String destDir) throws Exception{    
       //保证文件夹路径最后是"/"或者"\"     
       char lastChar = destDir.charAt(destDir.length()-1);    
       if(lastChar!='/'&&lastChar!='\\'){    
           destDir += File.separator;    
       }    
       //根据类型,进行相应的解压缩     
       String type = sourceFile.substring(sourceFile.lastIndexOf(".")+1);    
       if(type.equals("zip")){    
           DeCompressUtil.unzip(sourceFile, destDir);    
        }else if(type.equals("rar")){    
            DeCompressUtil.unrar(sourceFile, destDir);    
        }else{    
            throw new Exception("只支持zip和rar格式的压缩包!");    
        }    
    }  
  
   public static void main(String[] args)  
   {  
    try {
//  DeCompressUtil.deCompress("F:\\AttachDir.rar","F:\\a第三方s");
//     List<File> fileList=new ArrayList<File>();
//     DeCompressUtil.readFile("F:\\a第三方s",fileList);
//     System.out.println(fileList.size());
     String path="C:\\Documents and Settings\\Administrator\\workspaces\\.metadata\\.plugins\\org.eclipse.wst.server.core\\tmp0\\wtpwebapps\\MSISA2.1.4\\ntkoOffice\\ntkofile\\1370764956046";
     DeCompressUtil.delFolder(path);
    } catch (Exception e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 }  
   } 
  
      /**
       * 删除文件夹 
       * param folderPath 文件夹完整绝对路径
       */
      public static void delFolder(String folderPath) {
       try {
          delAllFile(folderPath); //删除完里面所有内容
          String filePath = folderPath;
          filePath = filePath.toString();
          java.io.File myFilePath = new java.io.File(filePath);
          myFilePath.delete(); //删除空文件夹
       } catch (Exception e) {
         e.printStackTrace();
       }
      }

  //删除指定文件夹下所有文件
  //param path 文件夹完整绝对路径
     public static boolean delAllFile(String path) {
        boolean flag = false;
        File file = new File(path);
        if (!file.exists()) {
          return flag;
        }
        if (!file.isDirectory()) {
          return flag;
        }
        String[] tempList = file.list();
        File temp = null;
        for (int i = 0; i < tempList.length; i++) {
           if (path.endsWith(File.separator)) {
              temp = new File(path + tempList[i]);
           } else {
               temp = new File(path + File.separator + tempList[i]);
           }
           if (temp.isFile()) {
              temp.delete();
           }
           if (temp.isDirectory()) {
              delAllFile(path + "/" + tempList[i]);//先删除文件夹里面的文件
              delFolder(path + "/" + tempList[i]);//再删除空文件夹
              flag = true;
           }
        }
        return flag;
      }
 

   
    /**
     * 读取指定文件夹下的所有文件
     * @param filepath
     * @param fileList
     * @throws FileNotFoundException
     * @throws IOException
     */
 public static void readFile(String filepath,List<File> fileList)
   throws FileNotFoundException, IOException {
  try {
   File file = new File(filepath);
   if (!file.isDirectory()) {
    //System.out.println("path=" + file.getPath());
    fileList.add(file);
   } else if (file.isDirectory()) {
    File[] filelist = file.listFiles();
    for (int i = 0; i < filelist.length; i++) {
     File readfile =  filelist[i];
     if (!readfile.isDirectory()) {
      //System.out.println("path=" + readfile.getPath());
      fileList.add(readfile);
     } else if (readfile.isDirectory()) {
      readFile(readfile.getPath(),fileList);
     }
    }
   }
  } catch (FileNotFoundException e) {
   System.out.println("readfile() Exception:" + e.getMessage());
  }
 }

Java环境下RAR与ZIP文件解压实战详解 *** 抽象归档解压器接口*//*** 获取归档内所有条目信息*//*** 根据名称获取特定条目*//*** 打开指定条目的输入流*//*** 解压全部内容到目标目录*//*** 解压单个条目*/@Override/*** 归档条目元数据封装*/// 构造函数省略...// getter方法省略...该接口设计模仿了ZipFile的行为特征,同时兼容RAR的特性。例如EntryInfo。 阅读详情

相关推荐

Java带密码解压缩RAR压缩包(内附代码)

实现JAVA解压缩带密码的RAR压缩包,支持中文,支持Window、Linux平台

Java 解压rar文件的两种方法

由于rar5算法未开源,没有合适的JAVA依赖能够解决解压rar5。我们可以调用系统中安装的解压软件来解压,我测试用的是winRAR。

香蕉加奶茶的博客 2440

Java解压带密码的RAR文件

Java解压RAR文件,压缩包内包含源码、Jar包、依赖包和示例程序,也可以从http://code.google.com/p/java-unrar/downloads/list这里下载支持密码的unrar项目(包括源码和jar包),其依赖包也很容易搜到。

java解压zip代码_通过java实现解压zip,rar的代码

package com.zuidaima.main;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import java.net.URL;import java.util...

weixin_34449886的博客 242

(Java)关键字zip暴力破解(穷举)

就是简单的组合所有的关键字,穷举法尝试,使用了zip4j_1.3.2.jar来进行解压

java加密解密zip压缩包

楼上兄弟太黑,特意找的源码,2分处理,完美解决Java加密解密zip文件

【Java】压缩包解压实现过程

在解压缩文件过程中,主要是对流的读取操作,注意进行异常处理,以及关闭流。解压缩文件时,注意空文件夹的处理。

weixin_71491685的博客 7613

java-实现密码破解

java-实现密码破解

实现java 解压zip,rar(rar5)以及调用命令解压,搬运即用哦,内含jar包

java 实现解压zip文件rar文件rar5前言二级标题 前言 最近项目需要解压zip,rar,文件,然后将解压后的pdf入库,整了一个多星期记录一下,方便以后使用。

cxy_zxl的博客 8664

随机向量函数链神经网络(RVFLNN)简介——附测试代码

宽度学习(Broad Learning System)原理介绍:随机向量函数链神经网络(RVFLNN) 目录宽度学习(Broad Learning System)原理介绍:随机向量函数链神经网络(RVFLNN)结构分析和训练优化 函数链神经网络(Functional-link neural network,简称FLNN)的结构如下图。 和深度神经网络结构不同的是,FLNN相当于把隐层放到了输入层中,作为增强结点(Enhancement nodes)。也可以理解成FLNN在输入层就对输入向量进行了非线性变换

weixin_44517742的博客 1万+

链式中介效应结果解读:从Bootstrap置信区间到实践意义

本文深入解析链式中介效应结果的解读方法,从Bootstrap置信区间的应用到实践意义的阐述。通过实际案例展示如何分析总效应、直接效应和间接效应,并强调效应量评估的重要性。文章还提供了构建逻辑解释的三步法,以及敏感性分析和报告撰写的实用技巧,帮助研究者准确解读链式中介效应。

weixin_33690367的博客 718

java解压zip和rar

解压zip类型压缩包 /** * 解压zip到指定目录 * @author hsj * @param zipFile * @param targetFilePath * @throws IOException */ @SuppressWarnings({ "rawtypes" }) public static void unZipFiles(File zipFile, String targetFilePath) { File pathFile = new File(.

H_lver的博客 786

关于使用vcpkg下载osgearth遇到的问题

注意--x-manifest-root=后面跟着的E:\gitproject\osgearth-osgearth-3.5\vcpkg是你下载的源码解压缩后vcpkg.json的文件地址,然后等待编译完成。安装vcpkg后使用vcpkg install osgearth:x64-windows安装好osgearth并且导入项目使用时,发现无法运行官方文档中示例的main.cpp。这里写一种自己用过的使用vcpkg安装osgearth3.5的方法,源码,打开vcpkg所在的命令行,执行。示例main.cpp。

m0_61776040的博客 1523

java对zip、rar、7z文件带密码解压实例

本文采用java语言实现了对zip和rar、7z文件的解压统一算法。并对比了相应的解压速度,支持传入密码进行在线解压。

夜郎King的博客 1万+

数字IC设计避坑指南:为什么477条net的DRV问题无法修复?解析don‘t touch hierarchy的影响

本文深入解析了数字IC后端实现中,因“don't touch hierarchy”约束导致大量DRV违规(如477条net)无法自动修复的根本原因。文章以Cadence Innovus工具为例,详细阐述了DRV修复机制与设计保护约束的冲突原理,并提供了从日志定位、风险评估到分级解除约束的完整实战策略,帮助工程师有效解决此类设计收敛难题。

hope8的博客 289

Z-Image Turbo LoRA训练全流程:从数据标注到模型部署的保姆级指南(附ai-toolkit配置)

本文提供了一份详尽的Z-Image Turbo LoRA模型训练全流程指南,涵盖从数据准备、智能标注、参数调优到最终模型部署与Z-Image集成的每个环节。重点解析了使用ai-toolkit训练整合包进行高效训练的核心技巧与避坑方法,旨在帮助用户稳定训练出高质量的专属角色模型。

weixin_29088655的博客 962

java解压zip与rar

这两天,因为项目需要,涉及到文件夹的上传,想了很久,在网上也找了一些资料,都没有什么很好的办法,都是用插件之类的解决,后面就想到了上传压缩文件,说到压缩文件,自然就会遇到,文件的解压缩问题,大家都知道,比较常见的压缩文件有rar,zip,然而rar,zip的区别又在哪?说一点,zip 压缩算法是免费开放的,任何人可以免费使用。但是 RAR 就不一样了, 这个压缩算法已经受到专利权的保护

李厂长的自留地 4819

保姆级教程:用Python和PyTorch复现PTB-XL心电信号分类论文(附完整代码)

本文提供了一份详细的PTB-XL心电信号分类教程,涵盖从数据预处理到模型优化的完整流程。通过PyTorch实现三种深度学习架构(Conv1D、SincNet和熵特征融合网络),并针对医疗AI特有的类别不平衡问题提供解决方案。教程包含可运行的代码示例,帮助开发者快速复现论文结果并应用于实际心电信号分析场景。

weixin_30555125的博客 405

java实现对rar文件和zip文件的解压缩

java实现对rar文件和zip文件的解压缩 一.对zip文件的解压缩 1.1 使用ZIP4J实现 zip4j官方说明: Create, Add, Extract, Update, Remove files from a Zip file 针对ZIP压缩文件创建、添加、抽出、更新和移除文件 Read/Write password protected Zip files (读写

ForeverLove的博客 2万+

SAP 消息号T-CODE

SAP消息号修改汇总 确实有很多消息是可以修改的 FI: oBA5|oFMG|oFPM MM: oMRM|oKZZ|oMT4|oMCQ|o04C| SD: oVAH(V4)|oVM1(VL) CO:  oPR4_ACT|oPR4_CK|oPR4_CKML|oPR4_CKPF|oPR4_KKA|oPR4_KKP|oPR4_KKS| oPR4_KKS1|oPR4_P

heng0757的专栏 1万+

AI问数,智慧赋能:基于大语言模型的数据播报员应用实践探索

AI问数技术正在改变企业与数据交互的方式,它以自然语言为桥梁,让数据不再是少数专家的专利,而是成为所有业务人员的决策伙伴。这不仅是技术的创新,更是管理理念的革新。在数字化转型的关键阶段,企业应积极拥抱AI问数技术,通过降低数据使用门槛、提升数据利用效率、释放数据潜在价值,实现真正的数据驱动决策,为企业的高质量发展注入源源不断的智慧动能。AI问数,正在开启一个数据普惠的新时代。

getusushu的博客 64

java 解压zip rar文件怎么打开_如何在java中解压zip和rar文件

如何在java中解压zip和rar文件为了方便广大的程序员朋友,下面讲一讲如何在java中实现对zip和rar文件的解压,一起和小编来看看吧!一、解压rar文件。由于WinRAR 是共享软件,并不是开源的,所以解压rar文件的前提是系统已经安装了winrar,比如本人的安装路径是:C:\\Program Files\\WinRAR\\winrar.exe然后运用java.lang.Process ...

weixin_29613721的博客 582

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

如何在java中实现对zip和rar文件的解压

public static void unzip(String fileUrl) { try { String filename = download(fileUrl); ZipFile zip = new ZipFile(filename); Enumeration zippedFiles = zip.entries(); while (zippedFiles.hasMoreElements()) { ZipEntry e

因为了解所以无知 1573

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

java解压zip代码_java解压zip,rar的代码

通过java实现解压zip,rar的代码。package com.zuidaima.util.unzip;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;import .U...

weixin_39815329的博客 97

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

上一篇: 在线查看图片
下一篇: dzw子窗口分页
nddjava
博客等级 码龄16年 15粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值