24h購物| | PChome| 登入
2023-05-12 00:37:54| 人氣3| 回應0 | 上一篇 | 下一篇
推薦 0 收藏 0 轉貼0 訂閱站台

JAVA 如何在LINUX COPY files時呈現PRO

有使用過進度條的同夥必然會感覺很不輕易
因為要從0~100讀取 浪擲時候
因檔案巨細也不知道這時候間讀寫的完嗎?
如這篇
Java Swing 若何使用進度

於是經過修正網站架設
改成此方式
可哄騙DIALOG準確的抓到讀寫完成的時間

  1. processdialog.setTitle("Copying files to USB");
  2.                             processdialog.add(labelimg);
  3.                             processdialog.setLocation(400,250);
  4.                             processdialog.pack(); // Packs the dialog so that the JOptionPane can be seen
  5.                             processdialog.setVisible(true); // Shows the dialog
  6.                             new Thread(){
  7.                                     public void run(){
  8.                                             try{
  9.                                                 Process process = null;
  10.                                                 BufferedReader input = null;
  11.                                                 final Runtime runtime = Runtime.getRuntime();
  12.                                                 //extact tar for ext3 file
  13.                                                 String tarstring = "tar -xvpf /"+tarpath+"/"+cellValue+".tar -C "+extpatition+"/";
  14.                                                 process = runtime.exec(new String[]{"/bin/sh","-c",tarstring});網站架設
  15.                                                 InputStream stdout = process.getInputStream ();
  16.                                                 InputStreamReader osr = new InputStreamReader (stdout);
  17.                                                 BufferedReader obr = new BufferedReader (osr);
  18.                                                 process.waitFor();
  19.                                                
  20.                                                 Thread.sleep(2000);
  21.                                             }catch(Exception e){
  22.                                                     e.printStackTrace();
  23.                                             }finally{
  24.                                                     processdialog.dispose();
  25.                                             }網站架設
  26.                                     }
  27.                             }.start();
複製代碼

new Thread這樣包起來就可以了
問甚麼要如許做呢?網站架設
因為dialog其實是極度浪費資源的
假如我程式起始啟動dialog
竣事用dialog.dispose();時
dialog圖標根本還沒出來就封閉了
就卡個視窗而以
完整進程圖片

1.png



本篇文章引用自此:

台長: moralesbvw
人氣(3) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 男女話題(愛情、男女、交友) | 個人分類: NetYea |
此分類下一篇:Arduino的 RGB led燈(共陽極)的利用
此分類上一篇:opencart 相幹商品(Related Products

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文