Необходимо выполнить команду winzip ниже в java-программе.Выполнение команды winzip в java-программе
C:\Program Files\WinZip>winzip32 -a -s"password" C:\abc.zip C:\abc.doc
Необходимо выполнить команду winzip ниже в java-программе.Выполнение команды winzip в java-программе
C:\Program Files\WinZip>winzip32 -a -s"password" C:\abc.zip C:\abc.doc
Вы можете просто использовать Runtime.exec();
String[] cmd = {"C:\\Program Files\\WinZip\\winzip32", "-a", "-s", "password", "C:\\abc.zip", "C:\\abc.doc"};
Runtime.getRuntime().exec(cmd);
Использование Runtime#exec()
(tutorial here, caveats here) или просто чистый код Java (related SO topic).
Кстати, если вам не нужна защита паролем, вы можете просто пойти с java.util.zip
(tutorial here).
Кроме того, если вы намерены иметь много потоков, которые могли бы позвонить, я предлагаю ограничить количество потоков, которые могут вызывать одновременно. –
+1: Использование java.util.zip дает вам кросс-платформенную поддержку, не полагается на установку WinZip и т. Д. Если это вариант, если это возможно, сделайте это. – 2010-02-15 03:30:43
Оглядываясь на интернет, сделайте то, что вы ищете: https://truezip.dev.java.net/, не полагаясь на внешнюю установку WinZip, которая может существовать или не существовать в системе конечного пользователя? Просто предложение.
Знаете ли вы, что java включает встроенную поддержку сжатия/распаковки zip-файлов? Лучше использовать чистую java, потому что ваше приложение будет кросс-платформой, а не только для Windows. – Asaph
@Asaph: Он хочет создать защищенный паролем zip-файл. – BalusC
@BalusC: Я заметил, что после того, как я опубликовал свой комментарий, когда я прочитал ваш ответ, который я поддержал. :) – Asaph