带进度条的输入流

来源:互联网 发布:易售乐软件 编辑:程序博客网 时间:2024/05/20 05:29

Java可以使用带进度条的输入流来读取文件,如果读取文件时希望让用户能够看见文件的读取进度,可以使用javax.swing包提供的输入流类ProgressMonitorInputStream,它的构造方法是:

ProgressMonitorInputStream(Component c, String s, InputStream);

该类创建的输入流在读取文件时会弹出一个显示读取进度的进度条,进度条在参数c指定的组件正前方显示;若该参数取null,则在屏幕的正前方显示。用户可以随时单机进度条上的“取消”按钮关闭流的读取操作。

import javax.swing.*;import java.io.*;public class Example10_18 {public static void main(String[] args) {// TODO Auto-generated method stubbyte b[]=new byte[30];try{FileInputStream input=new FileInputStream("Example10_18.java");ProgressMonitorInputStream in=new ProgressMonitorInputStream(null,"读取java文件",input);ProgressMonitor p=in.getProgressMonitor();while(in.read(b)!=-1){String s=new String(b);System.out.print(s);Thread.sleep(1000);}}catch(Exception e){}}}