`

分享ProgressMonitorInputStream之用法--进度条展示

阅读更多

import java.io.FileInputStream;

import javax.swing.ProgressMonitor;
import javax.swing.ProgressMonitorInputStream;

public class ProgressMonitorTest {
	public static void main(String args[]) throws Exception {
		// declare ProgressMonitorInputStream Object
		ProgressMonitorInputStream monitor;
		/**
		 * @param 表示此进度条要依附在哪个组件上
		 * @param 显示在此进度条上的消息
		 * @param 需要监控的输入流
		 */
		monitor = new ProgressMonitorInputStream(null, "Loading ",
				new FileInputStream("filename path"));

		/**
		 * 得到与此监控流相对应的监控对象
		 */
		ProgressMonitor progressMonitor = monitor.getProgressMonitor();

		int read_unit = 2;// 设置每次读取的字节数
		int all = monitor.available();// 得到目标文件的总字节数
		int readed = 0;// 每次实际读取到的字节数
		byte[] data = new byte[read_unit];// 字节数组,保存读取到的字节数
		while (monitor.available() > 0) {
			Thread.sleep(1);// 故意放慢速度好看清进度条
			int in = monitor.read(data);
			readed += in;
			// System.out.write(data);
			float process = (float) readed / all * 100;// 算出百分比
			// System.out.println("archived " + process + " %");
			progressMonitor.setNote("archived " + process + " %");// 显示在进度条上
		}
	}
}
 

 

分享到:
评论

相关推荐

    进度条使用说明 简单易学

    ### 进度条使用说明:Java Swing中的JProgressBar与ProgressMonitor深入解析 #### JProgressBar:构建动态进度显示 在Java的Swing库中,`JProgressBar`类是用于创建和控制进度条显示的重要组件。进度条是用户界面...

    怎样在Java实例开发的过程中使用进度条

    ### 如何在Java实例开发过程中使用进度条 ...通过上述介绍和示例代码,我们可以看到,在Java中使用`ProgressMonitorInputStream`来实现进度条功能是非常简单且直观的。这不仅可以提高程序的可用性,还能增强用户体验。

    java文件上传进度条实现

    代码可能会使用`ProgressMonitorInputStream`或自定义的`InputStream`包装类来跟踪上传进度。 总的来说,实现Java文件上传进度条涉及的知识点包括:网络编程(HTTP请求)、多线程、文件I/O操作、用户界面更新和异常...

    FTPUpload上传文件 进度条显示进度

    这个例子中,`ProgressMonitorInputStream`监听文件上传的进度,并通过`update()`方法更新进度条。注意,实际应用中还需要处理可能出现的异常,以及确保在文件传输完成后正确关闭所有资源。 通过以上步骤,你可以在...

    java实现在复制文件时使用进度条(java实现进度条)

    在Java编程中,实现文件复制并伴随进度条提示是一项实用的功能,特别是在处理大文件时,为了提高用户体验,进度条能够显示文件复制的进度,让用户了解操作的预计完成时间。以下是一个详细步骤,介绍如何在Java中实现...

    java读取文件显示进度条的实现方法

    6. **更新进度条**:使用`ProgressMonitor`的`setNote()`方法来更新进度条上的显示信息,如`progressMonitor.setNote("archived " + process + " %");`。 7. **持续监控**:在读取过程中,不断检查进度,并更新...

    ftp文件上传和下载

    在Java编程环境中,通过使用特定的库,如Apache Commons Net或者JSch,我们可以实现FTP的文件上传和下载功能,同时还能实现进度条展示,为用户提供更好的交互体验。 首先,我们需要了解FTP的基本工作原理。FTP基于...

    文件上传

    3. **进度条实现**:为了展示文件上传的进度,我们需要监听文件流的读写过程。一种常见的方式是使用第三方库,如Apache Commons IO的`ProgressMonitorInputStream`。这个类可以跟踪输入流的读取进度,我们可以根据这...

    JEE2实现文件下载

    Applet方法允许提供更复杂的用户交互,如进度条显示,但需要用户信任并加载Applet,这可能涉及安全问题,且不适用于所有浏览器环境。 总结来说,JEE2实现文件下载可以通过HTTP响应流直接在服务器端完成,也可以利用...

    java io 2nd

    - **进度监控输入流ProgressMonitorInputStream**:它允许你为应用的其它部分提供一个可视化的进度条,以便监控长时间运行的I/O操作进度。 ### 打印流PrintStreams `PrintStream`类用于方便地打印各种数据类型的...

    上传功能相关源码

    这需要监控文件上传的进度,可能通过监听`Part`的`progress`事件,或者使用第三方库如Apache Commons IO的`ProgressMonitorInputStream`。 7. **安全性**:文件上传可能会带来安全风险,比如恶意文件注入。因此,...

    java 多线程ftp代码

    7. 进度条显示:在多线程环境下,可以使用`ProgressMonitorInputStream`或自定义监听器来监控每个文件的传输进度,并更新用户界面。 8. 线程池:使用`ExecutorService`和`ThreadPoolExecutor`可以有效地管理和控制...

Global site tag (gtag.js) - Google Analytics