利用java的多线程机制实现对网络图片的下载
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了利用java的多线程机制实现对网络图片的下载,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2349字,纯文字阅读大概需要4分钟。
内容图文
学习Java多线程并对io流进行巩固
一,需要下载一个common.io的工具类库
下载地址:http://commons.apache.org/proper/commons-io/download_io.cgi
下载好之后,在Java工程根目录下新建一个lib包,将下载好的工具放到包里面,右键–>add as Library–>ok。
二,先写一个TextThread类,其继承自Thread类,重写run方法,并添加一个程序入口main()函数。
public class TestThread02 extends Thread{
//构造器
public TestThread02(String url,String name){
}
@Override
public void run() {
}
//主线程
public static void main(String[] args) {
}
}
三,写下载器DownLoader类,用来实现对网页图片的下载,用try,catch捕获异常。
//下载器
class Downloader{
//下载方法
public void Download(String url,String name){
try {
FileUtils.copyURLToFile(new URL(url),new File(name));
} catch (IOException e) {
e.printStackTrace();
System.out.println("发现了一个异常");
}
}
}
四,在重写的run()方法中,new一个DowmLoader类的对象,该对象调用类中的下载方法Download(),该方法中传入两个参数 url下载地址和name文件名字。
@Override
public void run() {
Downloader downloader = new Downloader();
downloader.Download(url,name);
System.out.println(name+"已经下载成功!");
}
五,在程序main()函数中实例化两个Testthread02的对象,t1,t2。参数url为目标图片的HTML地址,参数name为目标图片的名字。
图片HTML地址的查找方法:打开要下载图片的网页,找到图片,右键–>检查或审查元素,找到地址放到url参数里面。
六,最后在main()里面启动线程。程序源代码如下:
package Java多线程详解;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
import java.net.URL;
//使用多线程下载网图
public class TestThread02 extends Thread{
private String name;
private String url;
//构造器
public TestThread02(String url,String name){
this.url=url;
this.name=name;
}
@Override
public void run() {
Downloader downloader = new Downloader();
downloader.Download(url,name);
System.out.println(name+"已经下载成功!");
}
//主线程
public static void main(String[] args) {
TestThread02 t1 = new TestThread02("https://www.icode9.com/i/ll/?i=20200907134212782.png","图片一.png");
TestThread02 t2 = new TestThread02("https://www.icode9.com/i/ll/?i=img_convert/3383aa3b3894d5216bac89d7572f44cb.png","图片二.png");
t1.start();
t2.start();
}
}
//下载器
class Downloader{
//下载方法
public void Download(String url,String name){
try {
FileUtils.copyURLToFile(new URL(url),new File(name));
} catch (IOException e) {
e.printStackTrace();
System.out.println("发现了一个异常");
}
}
}
效果图:
内容总结
以上是互联网集市为您收集整理的利用java的多线程机制实现对网络图片的下载全部内容,希望文章能够帮你解决利用java的多线程机制实现对网络图片的下载所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。