Java解析bz2文件,java调用winrar解压文件[rar.bz2.zip.....]

package com.czp;

import java.io.File;

import java.util.Properties;

public class UnRarFile {

public static void main(String[] args) {

UnRarFile unrar = new UnRarFile();

unrar.unRarFileCurDir(new File("d:/ftpd/pm/test/*.bz2"));

}

/**

* 解压文件

*

* @param target

* @param oldFile

*/

public void unRarFile(File target, File oldFile) {

try {

if (isWindow()) {

String path = target.getParentFile().getAbsolutePath();

File tmp = target.getParentFile();

if (path.charAt(path.length() - 1) != ((char) File.separatorChar)) {

tmp = new File(path + File.separator);

if (!tmp.exists())

tmp.mkdirs();

}

String cmd2 = "C:\\Program Files\\WinRAR\\winrar.exe x -r -o+ -ibck -y "

+ oldFile + " *.* " + tmp;

Runtime rt = Runtime.getRuntime();

Process pre = rt.exec(cmd2);

if (0 != pre.waitFor()) {

pre.destroy();

}

rt.runFinalization();

System.out.println(cmd2);

} else {

System.out.println("can't get rar command abort");

}

} catch (Exception e) {

System.out.println("解压发生异常");

}

}

/**

* 解压到当前目录

*

* @param filePath

*/

public void unRarFileCurDir(File filePath) {

unRarFile(filePath, filePath);

}

/**

* 是否是window

*

* @return

*/

public boolean isWindow() {

Properties properties = System.getProperties();

String os = properties.getProperty("os.name");

if (os != null && os.contains("Windows"))

return true;

return false;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值