java讀取文件顯示進度條的完成辦法。本站提示廣大學習愛好者:(java讀取文件顯示進度條的完成辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是java讀取文件顯示進度條的完成辦法正文
完成這個功效比擬簡略,用到的類有兩個:ProgressMonitorInputStream(重要是全部類) 和 ProgressMonitor ,它們在javax.swing中
年夜體思緒,你要起首曉得全部文件的年夜小,和以後曾經讀取文件的年夜小,取得全部文件年夜小的辦法
ProgressMonitorInputStream monitor;
/**
* @param 表現此進度條要依靠在哪一個組件上
* @param 顯示在此進度條上的新聞
* @param 須要監控的輸出流
*/
monitor = new ProgressMonitorInputStream(null, "Loading ",new FileInputStream("filename path"));
int all = monitor.available();//全部文件的年夜小
int in = monitor.read(data);//每次讀取文件的年夜小
例如:你每次讀一行str=in.readLine();則data=str.instr.getBytes()+1;這裡+1,重要是為了取得換行符的字節數,不然,最初取得的提高沒法到達100%
int readed=0;//表現曾經讀取的文件
reader+=in;//累加讀取文件年夜小
盤算進度:
float process = (float) readed / all * 100;// 算出百分比
窗口顯示:
progressMonitor.setNote("archived " + process + " %");// 顯示在進度條上