package com.dollar.util;
import java.io.BufferedReader;
import java.io.File;
import java.io.InputStreamReader;
public class UnRarFile {
/**
* 解压rar文件
*
* @param targetPath
* @param absolutePath
*/
public void unRarFile(String targetPath, String absolutePath) {
try {
// 系统安装winrar的路径
String cmd = "C:\\Program Files\\WinRAR\\WinRAR.exe";
String unrarCmd = cmd + " x -r -p- -o+ " + absolutePath + " "
+ targetPath;
Runtime rt = Runtime.getRuntime();
Process pre = rt.exec(unrarCmd);
InputStreamReader isr = new InputStreamReader(pre.getInputStream());
BufferedReader bf = new BufferedReader(isr);
String line = null;
while ((line = bf.readLine()) != null) {
line = line.trim();
if ("".equals(line)) {
continue;
}
System.out.println(line);
}
bf.close();
} catch (Exception e) {
System.out.println("解压发生异常");
}
}
/**
* @param args
*/
public static void main(String[] args) {
String targetPath = "E:\\file\\test\\";
UnRarFile unrar = new UnRarFile();
File file=new File("E:\\file\\ybf100");
File[] fs=file.listFiles();
for(File f:fs){
FileUtil.saveMsg("E:\\file\\recode.txt", f.getName(), "UTF-8", true);
unrar.unRarFile(targetPath, f.getPath());
}
}
}
import java.io.BufferedReader;
import java.io.File;
import java.io.InputStreamReader;
public class UnRarFile {
/**
* 解压rar文件
*
* @param targetPath
* @param absolutePath
*/
public void unRarFile(String targetPath, String absolutePath) {
try {
// 系统安装winrar的路径
String cmd = "C:\\Program Files\\WinRAR\\WinRAR.exe";
String unrarCmd = cmd + " x -r -p- -o+ " + absolutePath + " "
+ targetPath;
Runtime rt = Runtime.getRuntime();
Process pre = rt.exec(unrarCmd);
InputStreamReader isr = new InputStreamReader(pre.getInputStream());
BufferedReader bf = new BufferedReader(isr);
String line = null;
while ((line = bf.readLine()) != null) {
line = line.trim();
if ("".equals(line)) {
continue;
}
System.out.println(line);
}
bf.close();
} catch (Exception e) {
System.out.println("解压发生异常");
}
}
/**
* @param args
*/
public static void main(String[] args) {
String targetPath = "E:\\file\\test\\";
UnRarFile unrar = new UnRarFile();
File file=new File("E:\\file\\ybf100");
File[] fs=file.listFiles();
for(File f:fs){
FileUtil.saveMsg("E:\\file\\recode.txt", f.getName(), "UTF-8", true);
unrar.unRarFile(targetPath, f.getPath());
}
}
}