WinRAR在特定文件上的命令

时间:2015-06-28 04:33:56

标签: java cmd runtime winrar

我有一个代码可以将ZIP文件存档到另一个ZIP文件中,使用如下命令:

String rootftp = "C:\\ROOT_DIR_PUSHFILE\\";
    String tampungString = "AAA\\PFILE\\AAA20140531.zip";
    String password = "testing";

    String command = "cmd.exe "
            + "/C"
            + " cd C:\\Program Files\\WinRAR \n"
            +" && rar a -n "+rootftp.trim()+tampungString+".zip"+" "+ rootftp.trim()+tampungString + " -p"+password.trim();
    System.out.println(command);

    File file = new File(rootftp.trim()+tampungString);
        try {
            Runtime.getRuntime().exec(command);
            file.delete();
        } catch (Exception e) {
            System.out.println(e);
            e.printStackTrace();
        }

但结果是:

enter image description here

当我尝试归档特定文件时,结果总是从根目录归档,而不仅仅是特定文件,如AAA20140531.zip文件,你能解释一下,为什么?以及如何解决它?

1 个答案:

答案 0 :(得分:1)

使用此命令创建没有父文件夹的.rar

rar a -ep1 c:\ROOT_DIR_PUSHFILE\AAA\PFILE\AAA20140531.zip c:\ROOT_DIR_PUSHFILE\AAA\PFILE\ -p123456

-ep1开关使结果从路径中排除基础文件夹