欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java讀取文件顯示進度條的實現(xiàn)方法

 更新時間:2014年01月28日 14:46:50   作者:  
當(dāng)讀取一個大文件時,一時半會兒無法看到讀取結(jié)果,就需要顯示一個進度條,是程序員明白已經(jīng)讀了多少文件,可以估算讀取還需要多少時間,下面的代碼可以實現(xiàn)這個功能

實現(xiàn)這個功能比較簡單,用到的類有兩個:ProgressMonitorInputStream(主要是整個類) 和 ProgressMonitor ,它們在javax.swing中
大體思路,你要首先知道整個文件的大小,和當(dāng)前已經(jīng)讀取文件的大小,獲得整個文件大小的方法

復(fù)制代碼 代碼如下:

ProgressMonitorInputStream monitor;
/**
* @param 表示此進度條要依附在哪個組件上
* @param 顯示在此進度條上的消息
* @param 需要監(jiān)控的輸入流
*/
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,主要是為了獲得換行符的字節(jié)數(shù),否則,最后獲得的進步無法達到100%

復(fù)制代碼 代碼如下:

int readed=0;//表示已經(jīng)讀取的文件
reader+=in;//累加讀取文件大小

計算進度:

復(fù)制代碼 代碼如下:

float process = (float) readed / all * 100;// 算出百分比

窗口顯示:

復(fù)制代碼 代碼如下:

progressMonitor.setNote("archived " + process + " %");// 顯示在進度條上

相關(guān)文章

  • Java 面向?qū)ο笾^承篇詳解原理與特點

    Java 面向?qū)ο笾^承篇詳解原理與特點

    繼承是java面向?qū)ο缶幊碳夹g(shù)的一塊基石,因為它允許創(chuàng)建分等級層次的類。繼承就是子類繼承父類的特征和行為,使得子類對象(實例)具有父類的實例域和方法,或子類從父類繼承方法,使得子類具有父類相同的行為
    2021-10-10
  • springboot 高版本后繼續(xù)使用log4j的完美解決方法

    springboot 高版本后繼續(xù)使用log4j的完美解決方法

    這篇文章主要介紹了 springboot 高版本后繼續(xù)使用log4j的解決方法,需要的朋友可以參考下
    2017-12-12
  • java web圖片上傳和文件上傳實例

    java web圖片上傳和文件上傳實例

    本篇文章主要介紹了java web圖片上傳和文件上傳實例,具有一定的參考價值,有需要的可以了解一下。
    2016-11-11
  • idea創(chuàng)建項目沒有webapp文件夾的解決方法

    idea創(chuàng)建項目沒有webapp文件夾的解決方法

    本文主要介紹了idea創(chuàng)建項目沒有webapp文件夾的解決方法,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • java 對數(shù)和指數(shù)計算方式

    java 對數(shù)和指數(shù)計算方式

    這篇文章主要介紹了java 對數(shù)和指數(shù)計算方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java 實現(xiàn)漢諾塔詳解及實現(xiàn)代碼

    java 實現(xiàn)漢諾塔詳解及實現(xiàn)代碼

    這篇文章主要介紹了java 實現(xiàn)漢諾塔詳解及實現(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • MyBatis 多表操作的實現(xiàn)

    MyBatis 多表操作的實現(xiàn)

    這篇文章主要介紹了MyBatis 多表操作的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Spring Security 強制退出指定用戶的方法

    Spring Security 強制退出指定用戶的方法

    本篇文章主要介紹了Spring Security 強制退出指定用戶的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • PowerJob的DatabaseMonitorAspect源碼流程

    PowerJob的DatabaseMonitorAspect源碼流程

    這篇文章主要為大家介紹了PowerJob的DatabaseMonitorAspect源碼流程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2024-01-01
  • 超級詳細的Java安裝教程(Mac版)

    超級詳細的Java安裝教程(Mac版)

    Java是一種廣泛使用的編程語言,可用于開發(fā)各種類型的應(yīng)用程序,這篇文章主要給大家介紹了關(guān)于Mac系統(tǒng)下Java安裝的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-10-10

最新評論