iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >Java中怎么批量下载网络图片
  • 136
分享到

Java中怎么批量下载网络图片

2023-06-17 06:06:52 136人浏览 独家记忆
摘要

这篇文章将为大家详细讲解有关Java中怎么批量下载网络图片,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。先来看下Json数据格式:为了方便操作,我封装了一个数据实体类package 

这篇文章将为大家详细讲解有关Java中怎么批量下载网络图片,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

先来看下Json数据格式:

Java中怎么批量下载网络图片

为了方便操作,我封装了一个数据实体类

package com.lcw.downloadutil.domain;  public class Bean {      private String phrase;     private String type;     private String url;     private Boolean hot;     private Boolean common;     private String cateGory;     private String icon;     private String value;     private String picid;      public String getPhrase() {         return phrase;     }      public void setPhrase(String phrase) {         this.phrase = phrase;     }      public String getType() {         return type;     }      public void setType(String type) {         this.type = type;     }      public String getUrl() {         return url;     }      public void setUrl(String url) {         this.url = url;     }      public Boolean getHot() {         return hot;     }      public void setHot(Boolean hot) {         this.hot = hot;     }      public Boolean getCommon() {         return common;     }      public void setCommon(Boolean common) {         this.common = common;     }      public String getCategory() {         return category;     }      public void setCategory(String category) {         this.category = category;     }      public String getIcon() {         return icon;     }      public void setIcon(String icon) {         this.icon = icon;     }      public String getValue() {         return value;     }      public void setValue(String value) {         this.value = value;     }      public String getPicid() {         return picid;     }      public void setPicid(String picid) {         this.picid = picid;     }      @Override     public String toString() {         return "Bean [phrase=" + phrase + ", type=" + type + ", url=" + url + ", hot=" + hot + ", common=" + common + ", category=" + category + ", icon=" + icon + ", value=" + value + ", picid=" + picid + "]";     }  }

然后我写了一个工具类封装了一些方法

分别用来处理(网络数据的获取,JSON数据的反序列化,对图片资源的下载)

package com.lcw.downloadutil.utils;  import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalfORMedURLException; import java.net.URL; import java.util.List;  import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import com.lcw.downloadutil.domain.Bean;   public class HelpUtils {          public String gethttpstring(String path) {         // 存放获取到的数据         String info = "";         // 网络请求所需变量         InputStream in = null;         InputStreamReader reader = null;         BufferedReader bufferedReader = null;         try {             URL url = new URL(path);             // 根据Url打开地址,以utf-8编码的形式返回输入流             in = url.openStream();             reader = new InputStreamReader(in, "utf-8");             bufferedReader = new BufferedReader(reader);             // 临时接受数据变量             String temp = null;             while ((temp = bufferedReader.readLine()) != null) {                 info += temp;             }             return info;         } catch (MalformedURLException e) {             e.printStackTrace();         } catch (IOException e) {             e.printStackTrace();         } finally {             try {                 in.close();                 reader.close();                 bufferedReader.close();             } catch (IOException e) {                 e.printStackTrace();             }         }         return null;     }           public List<Bean> changejsonToList(String json) {         // 利用Gson将JSON数据反序列化成JAVA对象         Gson gson = new Gson();         List<Bean> beans = gson.fromJson(json, new TypeToken<List<Bean>>() {         }.getType());         return beans;     }           public void makeImage(Bean bean, String filePath) {         // 网络请求所需变量         try {             //获取输入流             BufferedInputStream in = new BufferedInputStream(new URL(bean.getUrl()).openStream());             //创建文件流             File file = new File(filePath + bean.getPhrase()+".gif");             BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file));             //缓冲字节数组             byte[] data = new byte[2048];             int length = in.read(data);             while (length != -1) {                 out.write(data, 0, data.length);                 length = in.read(data);             }             System.out.println("正在执行下载任务:当前正在下载图片" + bean.getPhrase() + ".gif");             in.close();             out.close();         } catch (MalformedURLException e) {             e.printStackTrace();         } catch (IOException e) {             e.printStackTrace();         }     }  }

上面代码对于Json数据的处理,我用到了谷歌给我们提供的Gson工具类

package com.lcw.downloadutil.main;  import java.util.List;  import com.lcw.downloadutil.domain.Bean; import com.lcw.downloadutil.utils.HelpUtils;  public class TaskMain {      private static final String URL = "这里涉及到Oauth3.0的一些个人隐私数据就不给出了";     private static String mJsonInfo;      public static void main(String[] args) {         HelpUtils helpUtils = new HelpUtils();         // 获取Json数据         mJsonInfo = helpUtils.getHttpString(URL);         // 将Json数据反序列化成java对象         List<Bean> beans = helpUtils.changeJsonToList(mJsonInfo);         //循环遍历下载图片         for (int i = 0; i < beans.size(); i++) {             helpUtils.makeImage(beans.get(i), "C:/images/");         }      }  }

关于Java中怎么批量下载网络图片就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: Java中怎么批量下载网络图片

本文链接: http://www.lsjlt.com/news/287501.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Java中怎么批量下载网络图片
    这篇文章将为大家详细讲解有关Java中怎么批量下载网络图片,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。先来看下Json数据格式:为了方便操作,我封装了一个数据实体类package ...
    99+
    2023-06-17
  • Shell脚本怎么实现批量下载网络图片
    这篇文章主要介绍“Shell脚本怎么实现批量下载网络图片”,在日常操作中,相信很多人在Shell脚本怎么实现批量下载网络图片问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell脚本怎么实现批量下载网络图片...
    99+
    2023-06-09
  • win10如何批量下载网页中图片
    本篇内容介绍了“win10如何批量下载网页中图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!首先要在电脑上安装迅雷打开电脑,打开自带的Ed...
    99+
    2023-07-01
  • python 批量下载网页里的图片
    import requestsimport sys,re#设置提取图片url 的正则表达式imgre = re.compile(r"<img id=\"imgis\" src='(.*)'")#存放找到的 图片url的列表all_i...
    99+
    2023-01-31
    批量 下载网页 图片
  • Python 批量下载图片示例
        使用Python find函数和urllib下载图片。A:#!/usr/bin/env python import time import urllib i = 0 url = ['']*10 name = ['']*10 con ...
    99+
    2023-01-31
    示例 批量 下载图片
  • Python中怎么批量处理图片
    Python中怎么批量处理图片,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.Pillow库介绍Pillow是Python里的图像处理库,提供了了广泛的文件格式支持,强大...
    99+
    2023-06-02
  • PHP中怎么批量上传图片
    这期内容当中小编将会给大家带来有关PHP中怎么批量上传图片,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。PHP批量上传图片的代码如下:<html> <head><t...
    99+
    2023-06-17
  • nodejs如何制作爬虫实现批量下载图片
    小编给大家分享一下nodejs如何制作爬虫实现批量下载图片,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!今天想获取一大批猫的图片,然后就在360流浪器搜索框中输入 猫 ,然后点击图片。就看...
    99+
    2024-04-02
  • python识别批量网站中的图片
    需要实现的功能:给出一个网站列表,抓出这些网页上的图片。 实现方式: 下载网页源码,在源码中识别包含图片url的标签,如<img>,<div>,<li>。由于对html了解较少,哪些标签可能含有图片是从...
    99+
    2023-01-30
    批量 图片 网站
  • 怎么利用Python批量爬取网页图片
    你可以使用Python的requests库来发起HTTP请求,并使用BeautifulSoup库来解析HTML文档以获取图片的URL...
    99+
    2023-09-27
    Python
  • Java怎么通过URL类下载图片
    本篇内容介绍了“Java怎么通过URL类下载图片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Java通过URL类下载图片一、概述URL(U...
    99+
    2023-07-05
  • Kotlin实现网络图片下载和保存功能
    目录一、理论基础二、实验目的三、实验步骤1、新建工程文件2、引入布局管理3、创建布局4、访问权限5、实现逻辑四、实验演示五、实验总结一、理论基础 掌握Kotlin面向对象的软件开发方...
    99+
    2023-02-07
    Kotlin网络图片下载和保存 Kotlin图片下载 Kotlin保存图片
  • 怎么使用Java爬虫批量爬取图片
    本篇内容主要讲解“怎么使用Java爬虫批量爬取图片”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Java爬虫批量爬取图片”吧!爬取思路对于这种图片的获取,其实本质上就是就是文件的下载(H...
    99+
    2023-07-06
  • Android 实现单线程轮循机制批量下载图片
    Android 实现单线程轮循机制批量下载图片listview 在为item 添加从网上下载下来的图片时, 如果每次都整合一个item时都需要new一个Thread去下载图片,listview长时间滑动时会产生大量线程。用单线程轮循机制则可...
    99+
    2023-05-30
    android 单线程 下载图片
  • Linux中怎么批量修改文件夹下的图片名称
    Linux中怎么批量修改文件夹下的图片名称,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。如10.11一批这样的目录,10.11 10.12等等  然后里面的图片...
    99+
    2023-06-13
  • Photoshop中怎么批量修改图片大小
    这篇文章给大家分享的是有关Photoshop中怎么批量修改图片大小的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。修改方法:首先使用软件打开图片,选择页面顶部的“窗口”-“动作”,新建组;然后点击“创建新动作”按钮...
    99+
    2023-06-15
  • Python怎么批量下载阴阳师网站壁纸
    这篇文章给大家分享的是有关Python怎么批量下载阴阳师网站壁纸的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。最终版本# 引入系统类库用于打开关闭文件import sys# 使用文档...
    99+
    2023-06-15
  • Java中Easyexcel 实现批量插入图片功能
    目录1 Maven依赖2 PictureModel3CustomPictureHandler4 调试代码5 调试结果注:各位今天给大家分享Easyexcel 实现批量插入图片的问题,...
    99+
    2024-04-02
  • String项目中 加载网络img图片失败怎么解决
    这篇文章将为大家详细讲解有关String项目中 加载网络img图片失败怎么解决,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1. 概述当从网络加载图片失败 希望显示默认图img 标签有个 o...
    99+
    2023-05-31
    string 目中
  • Shell中怎么批量修改图片文件名
    这篇文章给大家介绍Shell中怎么批量修改图片文件名,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。代码如下:for i in `ls _*.png`; do mv "$i" `echo "...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作