为什么80%的码农都做不了架构师?>>>   

rar格式的压缩文件是window自带的压缩格式,jdk中没有现成的解压工具。所以解压缩这类文件要靠window自带的解压缩工具。并且在java中可以通过Runtime.getRuntime(),Process proc = rt.exec(cmd);获得一个进程执行解压所命令。在dos中有winrar的解压所命令 ,如:"E:\\WinRAR\\UnRar" x -o- -inul   "e:\a.rar" "e:\aa"
以下是核心代码:
 try {  
           Runtime rt = Runtime.getRuntime();
           Process p = rt.exec(unrarCmd + " \"" + rarFileName + "\" \""  + destDir + "\"");
           p.waitFor();
           p.destroy();
       } catch (Exception e) {  
           e.printStackTrace();
           System.out.println(e.getMessage());     
       }  
在运行程序的时候,一定要注意死锁问题:死锁时候是由于上面的 Process p = rt.exec(unrarCmd + " \"" + rarFileName + "\" \""  + destDir + "\""); 产生的子进程和当前进程之间交互时候因为某些资源共享引发了死锁。
所以使用的时候一定要注意。
-inul 这一个参数对于解决本问题中的死锁很有帮助。它的意思是:禁止所有讯息,就是不从dos命令中返回任何信息。这样就避免了子进程和当前进程的死锁问题。

转载于:https://my.oschina.net/hpujsj/blog/6827

java 解压rar文件相关推荐

  1. Java解压RAR文件的几种方式

    第一种: public class fileZipUtil {/*** zip文件解压* @param inputFile 待解压文件夹/文件* @param destDirPath 解压路径*/pu ...

  2. java如何解压rar文件怎么打开,java解压rar文件

    该文章参考了iteye某位大虾的博客,我自己进行了修改.请大家参考 package cn; import java.io.File; import java.io.FileNotFoundExcept ...

  3. java代码解压rar文件时报错,badRarArchive

    针对java代码解压rar文件时报错浅谈 1.针对所报的异常: de.innosystec.unrar.Archive setFile 警告: exception in archive constru ...

  4. java解压.rar、.zip和.7z格式压缩包

    解压zip格式文件用到的jar包有ant-1.6.5.jar和commons-logging-1.2.jar ,在pom.xml中输入: <!--zip--> <dependency ...

  5. 转:ASP自动解压RAR文件

    其实想实现这种功能很简单,首先要上传一个RAR的解压程序,就是RAR自己的解压程序,只需要它的核心程序RAR.EXE这个文件就可以了.然后就要上传一个执行RAR.EXE的程序 CMD.EXE 这个是w ...

  6. ubuntu16.04 server unrar解压rar文件提示command not found和解压tar.bz2文件

    ubuntu16.04 server unrar解压rar文件提示command not found和解压tar.bz2文件 Unrar解压rar文件失败 unrar e a.rar -sh: unr ...

  7. win7怎么解压rar文件_win7解压rar文件的方法

    大家知道win7怎么解压rar文件?rar是一种常用的文件压缩与归档的私有格式,用于数据压缩与归档打包.加快传输速度,我们都会将文件进行压缩.但最近有Win7系统用户反映收到rar文件,却不知道w怎么 ...

  8. windows史上最方便解压rar文件的软件WeDo

    最近朋友推荐了一款软件WeDo,及其简单的操作,让我一下子就很喜欢去使用它,它是一款只解压Rar文件的软件,只有一个操作,所以极其方便,首先给大家看一下他的操作界面: 从操作界面来看,极其精简: 使用 ...

  9. UnRAR.dll解压rar文件

    unRAR是一个开源的解压rar文件的C++第三方库,源码的github地址:https://github.com/aawc/unrar.git 百度文库的一份基本说明:https://wenku.b ...

  10. Mac解压rar文件工具

    Mac自带的归档压缩工具只能解压缩zip格式的压缩文件 解压rar文件就需要压缩工具了 推荐3款免费压缩工具: ①压缩工具The Unarchiver 官网:https://theunarchiver ...

最新文章

  1. 昨天,JetBrains 推出“下一代 IDE”,快看有哪些值得期待的功能!
  2. 哇,union的优先级很高嘛
  3. android 摄像头参数,获取Android设备上的详细的摄像头信息
  4. SAP UI5 应用开发教程之八 - 多语言的支持
  5. python电子病历数据挖掘_数据挖掘技术在基于XML的电子病历中的应用研究
  6. Flink解析kafka canal未压平数据为message报错
  7. 玩转 Tomcat 配置必备的 10 个小技巧!
  8. Vue(二十八)el-cascader 动态加载 - 省市区组件
  9. 从零开始学网络|搞懂OSI参考模型和TCP/IP分层模型,看这篇文章就够了
  10. android群英传神兵利器pdf,《Android群英传:神兵利器》勘误
  11. 七、VueJs 填坑日记之渲染一个列表
  12. 4-1.最大子数组分治法实现
  13. 关于戴尔等AC9560 160MHZ 网卡驱动出现感叹号,无法正常使用wifi解决办法之一
  14. Android拓展系列(5)--CyanogenMod源码下载和编译(Android ROM定制基础篇)
  15. android 代码保护 高级混淆
  16. Ericsson open-sources OpenWebRTC and Bowser for iOS; Intel releases IoT developer kit
  17. Openstack集群-Ceph集群作为存储的部署
  18. C语言 文件合成器代码(用图片掩盖.rar文件)
  19. 对折纸张(蓝桥杯真题)
  20. 牛顿法的matlab实现例题,【MATLAB|MATLAB牛顿插值法例题与程序Word版】

热门文章

  1. 【POJ 3469】Dual Core CPU【最小割】
  2. λ^n |λI−AB|= λ^m |λI−BA|
  3. 复旦nlp实验室 nlp-beginner 任务三:基于注意力机制的文本匹配
  4. 网络安全基础——服务器远程管理
  5. CSS3---3.相对父元素的伪类
  6. 分层图最短路【bzoj2763】: [JLOI2011]飞行路线
  7. IOS学习笔记-UINavgationController
  8. 使用mustache js模板引擎
  9. 802.11n 重新扬帆
  10. redis简介与常用数据类型介绍