Red de conocimiento informático - Aprendizaje de programación - Utilice Java para crear una barra de progreso para recopilar datos de progreso.

Utilice Java para crear una barra de progreso para recopilar datos de progreso.

Implementar esta función es relativamente simple, solo use dos clases: ProgressMonitorInputStream (principalmente la clase completa) y ProgressMonitor, obtenga el tamaño de todo el archivo en javax.swing y el tamaño del archivo leído actualmente, cómo obtener el tamaño de el archivo completo

El código es el siguiente.

Monitor ProgressMonitorInputStream;

/**

* @param indica a qué componente se adjuntará esta barra de progreso

* @param El mensaje que se mostrará en esta barra de progreso

* @param El flujo de entrada a monitorear

*/

monitor = new ProgressMonitorInputStream(null, "Loading ", new FileInputStream("filename path"));

int all = monitor.available();//el tamaño de todo el archivo

int in = monitor.read(data ) ;//el tamaño del archivo cada vez que lees

Por ejemplo: lees una línea a la vez str = in.readLine(); luego data = str.instr.getBytes() + 1; + 1 aquí es principalmente para obtener el número de bytes de nueva línea; de lo contrario, el progreso final no puede alcanzar el 100%

El código es el siguiente:

int readed=0;// significa que el archivo ha sido leído

reader+=in;//El tamaño acumulado del archivo leído

Progreso del cálculo:

El código es el siguiente:

proceso flotante = (flotante) leer / todo * 100;//Calcular porcentaje

Visualización de ventana:

El código es el siguiente:

progressMonitor.setNote("archivado " + proceso + " %");// se muestra en la barra de progreso