java rar解压
需要:junrar-0.7.jar 和 logging-1.0.4.jar 这个都可以在maven中找到很多人找jar包都去百度搜,我也是醉了,在maven中心库里搜,又安全,又简单。地址:http://search.maven.org/
package rar; import com.github.junrar.Archive; import com.github.junrar.rarfile.FileHeader; import java.io.File; import java.io.FileOutputStream; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by Administrator on 2015/11/26. */ public class RarUtil {/** * 根据原始rar路径,解压到指定文件夹下. * @param srcRarPath 原始rar路径 * @param dstDirectoryPath 解压到的文件夹 */ public static void unRarFile(String srcRarPath, String dstDirectoryPath) {if (!srcRarPath.toLowerCase().endsWith(".rar")) {System.out.println("非rar文件!"); return; }File dstDiretory = new File(dstDirectoryPath); if (!dstDiretory.exists()) {// 目标目录不存在时,创建该文件夹 dstDiretory.mkdirs(); }Archive a = null; try {a = new Archive(new File(srcRarPath)); if (a != null) {a.getMainHeader().print(); // 打印文件信息. FileHeader fh = a.nextFileHeader(); while (fh != null) {String fileName= fh.getFileNameW().trim(); if(!existZH(fileName)){fileName = fh.getFileNameString().trim(); }if (fh.isDirectory()) { // 文件夹 File fol = new File(dstDirectoryPath + File.separator + fileName); fol.mkdirs(); } else { // 文件 File out = new File(dstDirectoryPath + File.separator + fileName.trim()); //System.out.println(out.getAbsolutePath()); try {// 之所以这么写try,是因为万一这里面有了异常,不影响继续解压. if (!out.exists()) {if (!out.getParentFile().exists()) {// 相对路径可能多级,可能需要创建父目录. out.getParentFile().mkdirs(); }out.createNewFile(); }FileOutputStream os = new FileOutputStream(out); a.extractFile(fh, os); os.close(); } catch (Exception ex) {ex.printStackTrace(); }}fh = a.nextFileHeader(); }a.close(); }} catch (Exception e) {e.printStackTrace(); }}public static boolean existZH(String str) {String regEx = "[\\u4e00-\\u9fa5]"; Pattern p = Pattern.compile(regEx); Matcher m = p.matcher(str); while (m.find()) {return true; }return false; }public static void main(String[] args){unRarFile("d:\\desk\\sdf.rar", "d:\\desk"); }}
java rar解压相关推荐
- Java代码解压RAR/ZIP文件
pom.xml <!-- 导入zip解压包 --> <dependency><groupId>ant</groupId><artifactId&g ...
- java代码解压rar文件时报错,badRarArchive
针对java代码解压rar文件时报错浅谈 1.针对所报的异常: de.innosystec.unrar.Archive setFile 警告: exception in archive constru ...
- java实现解压rar5
JAVA 实现最新的winrar 5 压缩格式的解压. 最近,听到一位朋友说,要实现JAVA 服务端解压rar 文件的需求.当然,想都没想,认为很简单的活,就干了.结果,悲具了. 大家在网上找到的 J ...
- linux rar解压_linux命令
文件搜索 打包和压缩文件 Linux下的多用户多任务操作系统 查看文件内容 挂载一个文件系统 磁盘空间 用户和群组 文件的权限 文件的特殊属性 RPM 包 YUM 软件包升级器 DEB 包 安装软件 ...
- linux rar命令没找到,Linux没有rar解压命令
使用微软系统的同学都知道rar解压缩软件,它是一个商业的收费软件,那在免费开源的linux系统怎么解压后缀为rar的文件呢,我相信很多同学都是先把rar的文件下载到电脑本地,然后再用7-zip或者wi ...
- iOS关于rar解压第三方库Unrar4iOS使用总结
作者最近的公司项目要做实现rar解压的功能,在网上找了很久貌似关于rar解压的资料很少,不过有很多人推荐一个名叫"Unrar4iOS"的第三方开源框架,于是下载并尝试使用发现该开源 ...
- 7z001怎么解压在安卓手机上面_安卓zip文件压缩RAR解压手机下载-安卓zip文件压缩RAR解压v1.0最新版下载...
安卓zip文件压缩RAR解压是一款非常好用的手机压缩解压缩神器,在安卓zip文件压缩RAR解压上我们可以看到很多的实用的功能,软件可以帮助我们更好的处理我们手机中的文件,感兴趣的朋友赶紧下载安卓zip ...
- unrar file.rar 解压rar 问题,找不到unrar 命令。安装rar unrar流程及bug处理
在使用unrar e file.rar 解压时报错,需要安装rar 1.安装流程 1.1 用户 如果是root用户则不需要进行切换用户,否则 切换到root用户下[权限问题] 例如:$su root ...
- linux安装压缩文件的工具,Linux上安装rar解压工具
一.widonds下打包rar文件并上传 yum install lrzsz rz test.rar 二.下载并安装rar软件 2.1 下载 mkdir -p /home/oldboy/tools c ...
- linux 下安装rar解压软件,centos下rar解压工具的安装 rar和unrar命令使用方法
安装rar解压工具我们需要先找到rar的工具包,rar的官方下载地址如下: //www.rarsoft.com/download 找到相对应的压缩包地址 我的是centos 64位的,我需要的地址压缩 ...
最新文章
- Xtrabackup对mysql全备以及增量备份实施
- pytorch中load和load_state_dict区别
- 教程之怎样清理mac系统垃圾
- Java Enum 枚举
- BZOJ1110 : [POI2007]砝码Odw
- 仅需10道题轻松掌握Python文件处理 | Python技能树征题
- 数据可视化工具的意义有哪些
- db2 linux 64位下载,Redhat6.2 64位 安装DB2V10.5
- 阿里矢量图标(字体图标)
- 全国行政区划数据 - JSON
- 数据库的基本结构三个层次
- nginx resolver
- jpress转换html5,docker-compose安装jpress(这种是war包和生成文件在宿主机,运行在docker上)...
- 一次线上的502错误排查问题
- VMware16调整了路径后界面全部变成了英文
- shell脚本实现分日志级别输出
- ping www.baidu.com出现www.a.shifen.com
- GC0064-51单片机手持可充电GP2Y0A21红外测距离测量报警倒车雷达防撞报警视力保护
- python uiautomation_python+UIAutomation简介
- Power Pivot关系函数
热门文章
- Jetson TK1 配置
- 排坑·IPhoneIOS中不兼容正则中的断言匹配
- 立创eda学习笔记二:画pcb板流程(极简入门版)
- MATLAB编程之PTB: 实验暂停
- codewars day1
- 微擎 人人商城 对接京东vop 对接京东商品,同步商品 地址,库存,价格,上下架等。五 (下)京东后台提交订单,通知用户...
- PHP之支付宝APP支付
- C# - 2017微软校园招聘笔试题 之 MS Recognition[待解决]
- android 检查更新 卡住,阴阳师安装更新包卡住怎么办_安装更新包卡住解决办法...
- VBA学习笔记4:将同一文件下的多个工作簿的数据汇总为一个工作表