barbitoff programmer`s blog

Здесь я публикую заметки из программерской жизни: грабли, на которые мне случилось наступить, проблемы, для которых было найдено элегантное (или не очень) решение, а также все, с чем мне пришлось столкнуться и чем хотелось бы поделиться =)
PS Если хотите меня поблагодарить - на странице есть 3 места, чтобы это сделать =)

понедельник, 31 декабря 2012 г.

Java: получение вывода, выданного запущенным bat-ником

Уже как-то писал, как из Java вызывать bat-ники, теперь расскажу, как получить после этого то, что bat-ник вывел в "консоль".
Делается это так:
Process proc = Runtime.getRuntime().exec("cmd /c start my.bat");
proc.waitFor();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
IOUtils.copy(proc.getInputStream(), bos);
String batOutput = new String(bos.toByteArray(),"Cp866");
Здесь используется класс IOUtils из commons-io. Результат получаем в переменной  batOutput.

Комментариев нет:

Отправить комментарий