Я сделал небольшой графический интерфейс для youtube-dl, но для этого проекта я получил некий "живой" вывод из системной команды. Я уже пробовал это, но это отображает только результат, когда процесс завершился. Мне нужно что-то, что непрерывно отслеживает ход моей загрузки (youtube-dl - это просто инструмент командной строки, поэтому он должен обновляться примерно каждую секунду).
Как мне это сделать?
Я предлагаю начать новую тему, нажав кнопку "Загрузить", используя:
Runner = new Thread(this, "ExternalProcessTest");
Runner.start();
в Слушателе.
Дополнительную информацию о GUI-Threads можно найти здесь: неблокирующий поток
Некоторые дополнительные подходы к индикаторам прогресса на консоли: консоль прогресса
После небольшого поиска я нашел ответ:
Моя проблема заключалась в том, что терминал, где "System.out.println()" печатает свой вывод, не обновлялся. Он просто написал outout после завершения процесса, но поскольку я пишу клиент Download, вы должны увидеть прогресс вашей загрузки. Поэтому я сделал это так: