在java调用winrar:
public static boolean zip(String zipfile, String foler) {
//winrar软件的安装路径
String rarPath = "D:\\ProgramFiles\\WinRAR\\WinRAR.exe";
String cmd="";
// cmd=rarPath+" m -p123456" + zipfile +" "+ foler;//每个文件都要加密
// cmd = rarPath + " m -hp123456 " + zipfile + " "+ foler;//整个压缩文件加密,
try {
Process proc = Runtime.getRuntime().exec(cmd);
if (proc.waitFor() != 0) {
if (proc.exitValue() == 0)
return true;
}
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
上边最重要的就是命令 cmd=rarPath+" m -p123456" + zipfile +" "+ foler; 指令中的m表示压缩后删除原来的文件,要是不想删除的话把m换成a,-p表示对压缩的文件加密,-p后的字符就是密码,如果压缩多个文件到一个压缩包的话,就给每个文件都加密,要是给整体加一个密码的话,可以用-hp替换-p,可以试试。