2015-02-05 2 views
1

Hy.Java - Как читать вывод из 7z?

Я создал обычную программу, которая считывает файлы .tgz из каталога и разархивирует их. Я использую

Process zip01 = Runtime.getRuntime().exec("LINE OF COMMAND"); 

и

exitVal = zip01.waitFor(); 

Я, использую 7z.exe из своей папки для распаковки и сжатия файлов. Командная строка работает нормально. Теперь, я прочитал процент декомпрессии и бросил его в текстовое поле или текстовое поле. Графическая часть тоже ок, хорошо вся рутина. Единственный результат - получить процент в реальном времени от 7z. есть ли способ читать и показывать это?

Спасибо!

+0

Я не знаком с функциональностью CLI 7zip, но если он обеспечивает это через стандартный, вы определенно можете получить это. 'BufferedReader stdInput = новый BufferedReader (новый InputStreamReader (zip01.getInputStream()));' 'BufferedReader stdError = новый BufferedReader (новый InputStreamReader (zip01.getErrorStream()));' –

ответ

0

Вы можете получить выход вашего процесса, как это:

Process zip01 = Runtime.getRuntime().exec("LINE OF COMMAND"); 

BufferedReader output = new BufferedReader(new InputStreamReader(zip01.getInputStream())); 
String line; 
while ((line = output.readLine()) != null) { 

    /* process lines */ 
} 
+0

К сожалению, Роберт, но это не то, что мне нужно. Мне нужен процент простоя в реальном времени. Это решение сработало для другого вопроса, но его решение только показывает окончательный процесс для этого вопроса. –

+0

Итак, вы ищете кого-нибудь, чтобы заполнить бит «технологических линий» для вас? – robert

Смежные вопросы