Progressbar в консоли - Java
Формулировка задачи:
Есть такая проблема: вывод прогресса обработки файлов в многопоточном режиме.
Есть следующий код:
И класс Thread2
Файлов подаётся count штук, например, 100. Как мне выводить прогресс обработки файлов, например, каждые пол секунды?
Листинг программы
- for(int i = 0; i < count; i++) {
- Runnable r = new Thread2(s[i]);
- new Thread(r).start();
- }
Листинг программы
- class Thread2 implements Runnable {
- public void run() {
- //некий код
- }
- }
Решение задачи: «Progressbar в консоли»
textual
Листинг программы
- public class Programm {
- static void updateProgress(double progressPercentage) {
- final int width = 50; // progress bar width in chars
- System.out.print("\r[");
- int i = 0;
- for (; i <= (int)(progressPercentage*width); i++) {
- System.out.print(".");
- }
- for (; i < width; i++) {
- System.out.print(" ");
- }
- System.out.print("]");
- }
- public static void main(String[] args) {
- try {
- for (double progressPercentage = 0.0; progressPercentage < 1.0; progressPercentage += 0.01) {
- updateProgress(progressPercentage);
- Thread.sleep(20);
- }
- } catch (InterruptedException e) {}
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д