#java #swing #process #progress-bar #jprogressbar
#java #swing #процесс #индикатор выполнения #jprogressbar
Вопрос:
У меня есть метод, с помощью которого я могу выполнить checkdisk через Java. Поскольку я разрабатываю оптимизатор для ПК, мне нужно показать пользователю завершенные индексы и оставшиеся.Я могу сделать это, запустив checkdisk в командной строке, используя это:
Runtime.getRuntime().exec
Но меня беспокоит то, как я получу заполненные индексы и индексы, которые будут обработаны в моем пользовательском интерфейсе? Я буду делать это в Swing.
Комментарии:
1. Общий совет по
exec
. Прочитайте (и реализуйте) все рекомендации , когда Runtime.exec() не выполнит этого не сделает, не выполнит. Это могло бы решить проблему. Если нет, он должен предоставить больше информации о причине сбоя. Затем игнорируйте, на что это ссылается,exec
и создайтеProcess
с помощьюProcessBuilder
. Также разбейте aString arg
наString[] args
, чтобы учесть аргументы, которые сами содержат пробелы. КСТАТИ — Прогресс может быть указан в потоке вывода запущенногоProcess
.2. У меня есть свои опасения по поводу осуществимости этого проекта. Программе Checkdisk требуется полный доступ к диску, что подразумевает, что никакие файлы не должны быть открыты и несколько процессов, если вообще какие-либо, выполняются одновременно. Использование JVM для его запуска нарушает оба этих принципа. Я бы убедился, что это действительно работает без пользовательского интерфейса, прежде чем тратить слишком много времени на создание пользовательского интерфейса для программы, которая, возможно, никогда не сможет работать.