一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - java讀取文件顯示進度條的實現方法

java讀取文件顯示進度條的實現方法

2019-11-05 11:25java教程網 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 + " %");// 顯示在進度條上

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 夫妇交换小说全文阅读 | 亚洲精品www久久久久久久软件 | 日本爽p大片免费观看 | 亚洲人的天堂男人爽爽爽 | 帅小伙和警官同性3p | jizz女16处 | 免费亚洲一区 | 变态 调教 视频 国产九色 | 欧美一级片观看 | 15一16japanese破 | 国产肥臀| 歪歪漫画a漫入口 | 成人au免费视频影院 | 日韩欧美精品一区二区 | 成年人在线免费观看视频网站 | 女人与zzzooooxxx | 国产精品久久一区 | 日本黄色大片免费观看 | ady@ady9.映画网| 日韩精品亚洲一级在线观看 | 99久久免费国产香蕉麻豆 | 性导航h | 国产一区二区三区免费在线视频 | 日本五十路六十30人8时间 | 免费xxxxx大片在线观看影视 | 无限在线观看视频大全免费高清 | 亚洲AV久久久噜噜噜久久 | 1769最新资源站 | 国产精品最新资源网 | 牛人国产偷窥女洗浴在线观看 | 青山葵在线 | 国产精品资源在线观看网站 | 紧身裙女教师miad711在线 | 国产成+人+综合+亚洲欧美丁香花 | 国产香蕉一区二区精品视频 | 国产精品久久国产精品99 gif | 亚洲性视频在线观看 | 精品国产一区二区三区久久久蜜臀 | 亚洲AV午夜福利精品香蕉麻豆 | 99国产情在线视频 | 亚洲高清无在码在线电影 |