關于java讀取文件顯示進度條的實現方法
實現這個功能比較簡單,用到的類有兩個:ProgressMonitorInputStream(主要是整個類) 和 ProgressMonitor ,它們在javax.swing中
大體思路,你要首先知道整個文件的大小,和當前已經讀取文件的大小,獲得整個文件大小的方法
復制代碼 代碼如下:
ProgressMonitorInputStream monitor;
/**
* @param 表示此進度條要依附在哪個組件上
* @param 顯示在此進度條上的消息
* @param 需要監(jiān)控的輸入流
*/
monitor = new ProgressMonitorInputStream(null, "Loading ",new FileInputStream("filename path"));
int all = monitor.available();/pic/p>
int in = monitor.read(data);/pic/p>
例如:你每次讀一行str=in.readLine();則data=str.instr.getBytes()+1;這里+1,主要是為了獲得換行符的字節(jié)數,否則,最后獲得的進步無法達到100%
復制代碼 代碼如下:
int readed=0;/pic/p>
reader+=in;/pic/p>
計算進度:
復制代碼 代碼如下:
float process = (float) readed / all * 100;/pic/p>
窗口顯示:
復制代碼 代碼如下:
progressMonitor.setNote("archived " + process + " %");/pic/p>
【java讀取文件顯示進度條的實現方法】相關文章:
PHP中讀取大文件實現方法10-09
從Java的jar文件中讀取數據的方法02-21
Java的jar文件中讀取數據的方法09-23
PHP中讀取大文件實現方法詳解11-23
java如何通過url讀取文件08-24
java讀取解析xml文件實例02-26
Java讀取郵件的方法02-02