java如何解压rar文件怎么打开_java解压RAR压缩文件
最近在看java解压缩,发现RAR没有公开加密算法,所以java内部没有提供api解压,当时就觉得郁闷的,结果在网上查阅了一些,发现了一个思路,就是可以调用系统的命令解压文件,下面是解压的RAR文件的方法
package zip;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* 解压rar文件
* 注意:因为rar算法没有公开,我们只能在程序中调用系统安装的rar来解压(系统中必须安装winRAR)
* @author spring sky
* Emal: vipa1888@163.com
* QQ: 840950105
* My Name :石明政
*/
public class UnRARFile {
/**
* 系统安装的winRAR位置
*/
private static final String WINRAR_PATH = "C:\\Program Files\\WinRAR\\WinRAR.exe";
/**
* 解压方法
* @param rarFilePath rar压缩文件的路径
* @param unFilePath 要解压到指定的路径
* @throws IOException IO异常
*/
public static void unRARFile(String rarFilePath,String unFilePath) throws IOException
{
File f = new File(unFilePath);
if(!f.exists()) //如果发现指定解压的路径不存在,创建目录
{
f.mkdirs();
}
String cmd = WINRAR_PATH + " x -r -p -o " + rarFilePath+ " " + unFilePath; //需要执行的命令
Runtime runtime = Runtime.getRuntime(); //得到命令对象
Process process = runtime.exec(cmd); //获取执行命令过程中返回的流
/**
* 下面是打印出流的内容,查看是否有异常
*/
InputStreamReader isr = new InputStreamReader(process.getInputStream());
BufferedReader br = new BufferedReader(isr);
String str = null;
while((str=br.readLine())!=null)
{
if(!"".equals(str.trim())&&str!=null) //如果当前行不为空
{
System.out.println(str);
}
}
br.close();
}
测试类:
/**
* 测试
* @param args
*/
public static void main(String[] args) {
String rarPath = "d:\\a.rar";
String unRarPath = "d:\\abc";
try {
UnRARFile.unRARFile(rarPath, unRarPath);
} catch (IOException e) {
System.out.println("出现异常....");
e.printStackTrace();
}
}
需要注意的是:运行程序下面的弹出框
如果没有加密的话,那就直接点击确定就可以了,如果加密就需要密码解压,直接输入密码就可以解压文件了 .....
java如何解压rar文件怎么打开_java解压RAR压缩文件相关推荐
- html解压zip文件怎么打开方式,使用zip.js压缩文件和解压文件
官方例子支持在线演示效果. 研究的目的是:如何获取zip包中的信息并读取传输(其实使用JAVA或者node.js更容易实现,之所以使用js也是因为业务的特殊性). 准备库: 下载成功解压是这样的,如图 ...
- java导出文件到excel文件怎么打开_Java导出数据到Excel文件
Java导出数据到Excel文件需要的jar包:easypoi-0.1.3.jar, poi-3.7-20101029 package com.sais.inkaNet.reportStatistic ...
- 已解决解压zip文件,抛出异常:不可预料的压缩文件末端的正确解决方法(亲测有效)
已解决解压zip文件,抛出异常:不可预料的压缩文件末端的正确解决方法(亲测有效) 文章目录 报错问题 报错原因 解决方法 千人全栈VIP答疑群联系博主帮忙解决报错 报错问题 粉丝群里面的一个小伙伴遇到 ...
- Unity 工具类 之 WWW/UnityWebRequest 下载压缩文件(zip),解压到本地且加载使用解压数据的简单案例(内也含压缩文件例子)
Unity 工具类 之 WWW/UnityWebRequest 网络下载压缩文件(zip),解压到本地,且加载使用解压数据的简单案例(内也含压缩文件例子) 目录 Unity 工具类 之 WWW/Uni ...
- linux解压文件卡住,Linux系统下常见的压缩文件及解压方法
如果tar不支持j这个参数就先用 bzip2 -d xxx.tar.bz2 把它解压成.tar文件,然后再用 tar xvf xxx.tar 拆包. 压缩解压 linux下怎么解后缀名是gzip的文件 ...
- Java多word文件生成后进行压缩并导出下载后,压缩文件损坏并提示“不可预料的压缩文件末端”和“CRC校验失败”
Java多word文件生成后进行压缩并导出下载后,压缩文件损坏并提示"不可预料的压缩文件末端"和"CRC校验失败" WinRAR 打开情况: 提示不可预料的压缩 ...
- mysql格式是什么文件怎么打开_sql文件怎么打开,SQL格式是什么文件?
SQL格式是什么文件? 学习编程的同学可能都知道SQL是一种高级的非过程化的编程语言,雷同于office Access.但是后者大家用的可能比较多,会计专业的同学可能都会考这方面的证书.SQL在数据库 ...
- 压缩包里面是html文件怎么打开方式,展示电脑rar压缩包文件怎么打开?教你正确打开方式...
不管是生活还是工作需要,经常需要把文件打包处理,这样可以避免在发送文件的时候出现丢失或损坏文件,那么总会收到rar格式的文件,如何打开rar格式的文件呢?今天跟小编一起看下打开rar格式文件的详细操作 ...
- php解压base64编码,PHP函数分享之解压缩base64压缩文件
解压缩base64 压缩文件,稍微解释一下,比如你有一个pdf文件,使用软件压缩成了.gz格式的文件,然后再把这个文件做成了basa64 String 传输给某个人,比如这个人就是我,好吧,问题来了, ...
- java音频文件怎么打开_java 怎么读取音乐文件
展开全部 以随机读写方式打开一个MP3文件 将文件指针32313133353236313431303231363533e58685e5aeb931333337613838偏移量移动到文件长度倒数128 ...
最新文章
- SoftReference
- linux 脚本案例,30个关于Shell脚本的经典案例(上)
- MySQL默认值(DEFAULT)
- 剑指-二维数组中的查找
- 介绍一个能开发简单SAP UI5应用的在线IDE:StackBlitz
- python文件图标变成小电脑_手把手教你给Python程序写图形界面,并且打包成exe文件-exe文件...
- Linq To Sql进阶系列 -目录导航
- 微信小程序 - 按照官网文档构建npm包 - 提示【没有找到可以构建的npm】
- Android 系统(94)---android系统属性(ro.com.google.clientidbase.ms)随卡适配
- sql server 2005学习笔记之触发器简介(一)
- Python模块下载常用地址
- 计算机英语词典 txt,9种Txt格式朗文英语词典免费分享
- rms 文档权限服务器,Rms操作设置office系统文档权限
- php模板读取工具,打造自己的php半自动化代码审计工具
- 【转贴】古代四大名琴
- TP-LINK如何设置Wifi无线上网短信认证?
- Java如何判断一个上传文件的内容类型
- TensorFlow调试之一种很笨但行之有效的调试方案
- 英语2017年6月听力
- buddypress主题_如何在WordPress 3.0中启用BuddyPress