2010-05-29 116 views

回答

2

這應該做的伎倆:

 import java.io.*; 
     import java.net.*; 

     ... 

     try { 
      URL fileUrl = new URL("someurl); 
      BufferedInputStream in = new BufferedInputStream(fileUrl.openStream()); 
      FileOutputStream fos = new FileOutputStream("/home/user/download/file"); 
      BufferedOutputStream bout = new BufferedOutputStream(fos, BUFFER_SIZE); 
      byte[] data = new byte[1024]; 
      int x; 

      while ((x = in.read(data, 0, 1024)) >= 0) { 
       bout.write(data, 0, x); 
      } 

      bout.close(); 
      in.close(); 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } catch (IOException ex) { 
      ex.printStackTrace(); 
     } 
+0

你能否給我提供我必須使用的軟件包。即時通訊與包裹是什麼混淆。請發帖 – Nubkadiya 2010-05-29 12:44:45

+0

完成。包是java.io和java.net – 2010-05-29 13:58:40

+0

我試過這個,但仍然無法讓它工作。你能檢查一下嗎?當我嘗試它時。對於所有的步驟,它要求嘗試和捕捉塊。請檢查 – Nubkadiya 2010-05-31 04:44:05

0

阿帕奇百科全書真的很容易,用靜態FileUtils.copyURLToFile方法:

import org.apache.commons.io.FileUtils; 

... 

FileUtils.copyURLToFile(url, file); 

這是Apache的百科全書IO包的一部分,可以在這裏下載:http://commons.apache.org/io/download_io.cgi

+0

這可以只複製文件禮儀。但是我的要求有點不同。我想從網絡服務器上下載並顯示一個圖像,並想在我的Java應用程序 – Nubkadiya 2010-05-31 04:46:40

+0

@Nubkadiya:true中顯示它,但是您可以將圖像下載到臨時文件,然後在應用程序中加載該文件。這也有助於緩存 - 試圖在應用程序中再次查看文件將使用已下載的本地文件。 – Oak 2010-05-31 07:22:50

+0

您能否爲我提供完整的代碼。它有很大的幫助。但我確實需要該代碼才能從該文件獲取數據。 – Nubkadiya 2010-05-31 12:57:56

相關問題