亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Java多線程下載網圖的完整案例

瀏覽:27日期:2022-08-15 09:38:31

Java多線程下載網圖案例

此案例依賴——文件操作工具類(FileUtils)

使用 apache 的commons-io包下的FileUtilsimportorg.apache.commons.io.FileUtils;

下載commons-io包

官方API文檔

點擊即可下載,然后導入IDEA的庫中或者項目中。

Java多線程下載網圖的完整案例

導包

Java多線程下載網圖的完整案例

首先創建一個下載器

步驟:

1.新建一個download類

2.在類中建立一個下載方法

下載方法需要接收2個變量,一個是url下載地址,一個是name文件名稱

3.在下載方法中調用文件操作工具類(FileUtils)

4.try/catch捕獲異常并提示異常

方法 說明 copyURLToFile(URL source, File destination) 將字節從URL復制source到文件中 destination。

//下載器class download{//下載方法 public void down(String url,String name){ try { FileUtils.copyURLToFile(new URL(url),new File(name)); } catch (IOException e) { e.printStackTrace(); System.out.println('IO異常,download方法出現問題'); } }}然后創建一個線程類

步驟:

1.創建線程類-多線程下載器,繼承Thread類

2.定義2個私有變量(url下載地址,name文件名稱)

3.創建有參數構造器(用于初始化2個私有變量的值)

4.重寫Thread父類的run方法

run方法的方法體內寫入要執行的任務,我們的任務就是要下載網圖,因為要用到下載器里面的下載方法,所以直接實例化download類,然后調用download類中的down方法,由于down方法需要接受2個String類型的變量(url和name),直接將2個私有變量傳入進去,最后給個提示,打印出下載的文件名稱。

public class 多線程下載器 extends Thread{ private String url; private String name; public 多線程下載器(String url, String name) { this.url = url; this.name = name; } @Override public void run() { download download = new download(); download.down(url,name); System.out.println('下載了名為'+name); }}在main方法中創建線程并啟動

步驟:

1.創建一個main方法

2.創建3個線程

創建線程的時候要傳入參數,目的是調用有參構造器初始化私有變量

這里傳入3個圖片的地址以及文件的名稱

注意文件名稱,下載的文件類型要對應好相應的后綴名

多線程下載器 t1=new 多線程下載器('https://www.baidu.com/favicon.ico','百度.ico');多線程下載器 t2=new 多線程下載器('https://www.apple.com/favicon.ico','蘋果.ico');多線程下載器 t3=new 多線程下載器('https://www.jd.com/favicon.ico','京東.ico');

3.用start開啟3個線程

start方法會開啟新的線程,并且在新的線程中調用線程類中的run方法

public static void main(String[] args) { 多線程下載器 t1=new 多線程下載器('https://www.baidu.com/favicon.ico','百度.ico'); 多線程下載器 t2=new 多線程下載器('https://www.apple.com/favicon.ico','蘋果.ico'); 多線程下載器 t3=new 多線程下載器('https://www.jd.com/favicon.ico','京東.ico'); t1.start(); t2.start(); t3.start(); }

全部代碼:

package 多線程;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.URL;public class 多線程下載器 extends Thread{ private String url; private String name; public 多線程下載器(String url, String name) { this.url = url; this.name = name; } @Override public void run() { download download = new download(); download.down(url,name); System.out.println('下載了名為'+name); } public static void main(String[] args) { 多線程下載器 t1=new 多線程下載器('https://www.baidu.com/favicon.ico','百度.ico'); 多線程下載器 t2=new 多線程下載器('https://www.apple.com/favicon.ico','蘋果.ico'); 多線程下載器 t3=new 多線程下載器('https://www.jd.com/favicon.ico','京東.ico'); t1.start(); t2.start(); t3.start(); }}//下載器class download{ public void down(String url,String name){ try { FileUtils.copyURLToFile(new URL(url),new File(name)); } catch (IOException e) { e.printStackTrace(); System.out.println('IO異常,download方法出現問題'); } }}

運行結果:

Java多線程下載網圖的完整案例

下載的文件默認位置在項目下如圖:

Java多線程下載網圖的完整案例

雙擊圖片文件可進行查看

Java多線程下載網圖的完整案例

總結

到此這篇關于Java多線程下載網圖的文章就介紹到這了,更多相關Java多線程下載網圖內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
主站蜘蛛池模板: 免费一级特黄 欧美大片 | 日本一级淫一片免费 | 亚洲国产精品网站久久 | 精品国产免费观看一区 | 91精品免费不卡在线观看 | 免费无遮挡嘿嘿嘿视频动态 | 亚洲精品午夜国产va久久成人 | 九九夜夜| 久草视频网 | 深爱激情四射 | 麻豆视频一区二区 | 久久国产精品一区二区三区 | 午夜视频色| 在线观看成年人视频 | 欧美高清不卡视频 | 九一精品视频 | 天天插天天爽 | 中文永久免费看电视网站入口 | 欧洲视频一区 | 免费观看黄色网 | 妖精视频永久在线入口 | 嘿嘿视频在线观看 成人 | 国产高清在线精品一区免费97 | 国产精品二区高清在线 | 亚洲五月花 | 91青青国产在线观看免费 | www.黄色网 | 自拍偷拍1| 精品久久久一二三区 | 中文字幕一区在线观看 | 思思九九| 老司机狠狠k免费毛片 | 亚洲日本在线免费观看 | 国产黄色免费网站 | 色综合网站国产麻豆 | 国产人成亚洲第一网站在线播放 | 久久草在线观看视频 | 看国产黄色片 | 欧美一区二区三区在线 | 给个网站可以在线观看你懂的 | 欧美国产综合 |