2010-02-15 125 views
2

需要在java程序中执行下面的winzip命令。在java程序中执行winzip命令

C:\Program Files\WinZip>winzip32 -a -s"password" C:\abc.zip C:\abc.doc
+0

您是否知道java包含对压缩/解压缩zip文件的本机支持?最好使用纯Java,因为你的应用程序将是跨平台的,而不仅仅是Windows。 – Asaph

+0

@Asaph:他想创建一个受密码保护的zip文件。 – BalusC

+0

@BalusC:我注意到,当我发布我的评论后,当我看到你的答案,我upvoted。 :) – Asaph

回答

2

您可以简单使用Runtime.exec();

String[] cmd = {"C:\\Program Files\\WinZip\\winzip32", "-a", "-s", "password", "C:\\abc.zip", "C:\\abc.doc"}; 
Runtime.getRuntime().exec(cmd); 
5

使用Runtime#exec()tutorial herecaveats here),或者只是纯粹的Java代码(related SO topic)。顺便说一下,如果你不需要密码保护,你可以继续java.util.ziptutorial here)。

+0

另外,如果你打算有很多线程可以调用,我建议限制一次可以调用的线程数。 –

+1

+1:使用java.util.zip可为您提供跨平台支持,不依赖于WinZip的安装等。如果可能的话,这是一个可以使用的选项。 – 2010-02-15 03:30:43

1

环顾互联网,这是否会做你正在寻找的东西:https://truezip.dev.java.net/而不必依靠WinZip的外部安装,它可能会或可能不存在于最终用户系统上?只是一个建议。