У меня есть быстрый вопрос о получении выходных данных из конкретных экземпляров программ, которые моя java-программа запускает через командную строку. Я могу получить выходные данные для программ, пока они выводят несколько строк, но если это программа, которая обновляет текущую строку, мне кажется, что вам не повезло. Например, когда я пытаюсь преобразовать mp4 в mp3, используя ffmpeg, у него будет только одна строка с текущими размерами файлов и временем, которые будут выполняться, которые я не могу получить при запуске через мою java-программу. Вот код, который я использую, когда работает несколько строк:Java, получающий выход из программы, выполняемой в командной строке, когда он постоянно обновляет одну строку в командной строке
InputStream is = pr.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line;
System.out.printf("Output of running %s is:\n",
Arrays.toString(command1));
while ((line = br.readLine()) != null) {
System.out.println(line);
}
try {
int exitValue = pr.waitFor();
System.out.println("\n\nExit Value is " + exitValue);
} catch (InterruptedException e) {
e.printStackTrace();
}
Любая помощь будет очень признательна! Благодаря!
Ok спасибо, я буду смотреть на это! – Ibrennan208