天天看點

java 下載下傳網絡圖檔_IO流實作網絡圖檔下載下傳(java實作)

用流的方式在實作對網絡圖檔的下載下傳

分析:

參數:

圖檔的網絡位址:webURL

儲存到本地位址:localPath

監聽器:判斷是否下載下傳成功(這是一個觀察者模式)

具體代碼如下:

import java.io.*;

import java.net.URL;

import java.net.URLConnection;

public class DownLoadPicture {

public static void main(String[] args) {

//網絡圖檔連結位址

String webURL = "https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=1468179265,2584742085&fm=26&gp=0.jpg";

//本地儲存位址

String localPath = "D:\\test\\picture.jpg";

downLoadJpg(webURL, localPath);

}

public static void downLoadJpg(String webURL, String localPath) {

try {

//網絡URL

URL url = new URL(webURL);

//打開網絡連接配接

URLConnection connection = url.openConnection();

//輸入流

InputStream inputStream = connection.getInputStream();

//輸出檔案流

OutputStream outputStream = new FileOutputStream(new File(localPath));

//緩沖區對象

byte[] b = new byte[1024];

//讀取計數器

int len;

while ((len = inputStream.read(b)) != -1) {

outputStream.write(b, 0, len);

}

//關閉輸入流操作

try {

inputStream.close();

} catch (Exception e) {

e.printStackTrace();

}

//關閉輸出流操作

try {

outputStream.close();

} catch (Exception e) {

e.printStackTrace();

}

//監聽下載下傳成功

} catch (Exception e) {

//監聽下載下傳失敗

e.printStackTrace();

}

}

}