Java之~hutool批量压缩多个图片文件上传到云服务(InputStream )
用的hutool工具类
import cn.hutool.core.util.ZipUtil;
批量多张图片进行压缩。我这边是将上传到华为云的图片进行批量打包压缩。
//图片批量压缩
@Test
public void getZipTest(){//获取图片http地址
String a = "http://XXXXX/file/img22081678989401.png";
String aa = "http://XXXXX/file/img22081663148040.png";//组装
List<String> list = new ArrayList<String>();
list.add(a);
list.add(aa);
String[] strings = list.stream().toArray(String[]::new);List<InputStream> inputStreamList = new ArrayList<InputStream>();
for(String i: list){
InputStream inputStream = QrCodeUtils.stringToInputStream(i);
inputStreamList.add(inputStream);
}//将图片转为图片源
InputStream [] inputStreams = inputStreamList.stream().toArray(InputStream[]::new);//定义临时输出流
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();//压缩方法
ZipUtil.zip(outputStream,strings,inputStreams);//转流方式
ByteArrayInputStream result = new ByteArrayInputStream(outputStream.toByteArray());
//然后就可以调用云服务的上传文件流的方式上传了fileUploadService
}
主要的方法就是ZipUtil.zip()。
压缩后这样的,图片都在文件夹内
以上解压的主要流程就结束了。
----------------------------QrCodeUtils--------------------------
使用的自定义工具类:
QrCodeUtils.stringToInputStream(i);
QrCodeUtils这个是我自己定义的一个类,主要是进行图片的一些流转换,如下:
/*** 将图片转为输入流* @param image* @return*/ public static InputStream stringToInputStream(String image){URL urlfile = null;try {urlfile = new URL(image);} catch (MalformedURLException e) {e.printStackTrace();}InputStream inStream = null;try {inStream = urlfile.openStream();} catch (IOException e) {e.printStackTrace();}return inStream; }
具体自定义二维码的工具类QrCodeUtils地址:Java之~hutool二维码工具类自定义QrCodeUtils,图片输入输出流转换_萍宝儿的博客-CSDN博客
Java之~hutool批量压缩多个图片文件上传到云服务(InputStream )相关推荐
- Java实现图片文件上传
Java实现图片文件上传 Java实现后台图片上传,将上传图片的接口进行分层,便于维护接口. 接口部分(interface) 将接口分为单图片上传以及多图片上传 public interface Fi ...
- Office文档上传后实时转换为PDF格式_图片文件上传后实时裁剪_实现在线预览Office文档
Office文档上传后实时转换为PDF格式_图片文件上传后实时裁剪 前置条件 安装LibreOffice 安装OpenOffice 安装Unoconv 安装ImageMagick.x86_64 安装G ...
- springmvc图片文件上传接口
springmvc图片文件上传 用MultipartFile文件方式传输 Controller package com.controller;import java.awt.image.Buffere ...
- android webview 多文件上传,Android网页WebView图片文件上传的问题
Android网页WebView图片文件上传的问题 发布时间:2020-07-13 22:48:15 来源:51CTO 阅读:5922 作者:拾荒者老大 在安卓下,webview上传图片点击是没用的, ...
- java文件上传到云服务器,java文件上传到云服务器
java文件上传到云服务器 内容精选 换一换 当用户拥有Linux操作系统的外部镜像文件,且类型及操作系统符合外部镜像文件格式和操作系统类型要求时,用户可以将外部镜像文件创建为Linux系统盘镜像. ...
- .Net Core 图片文件上传下载
当下.Net Core项目可是如雨后春笋一般发展起来,作为.Net大军中的一员,我热忱地拥抱了.Net Core并且积极使用其进行业务的开发,我们先介绍下.Net Core项目下实现文件上传下载接口. ...
- 7.3 MASS批量修改数据(Excel文件上传数据)
7.3 MASS批量修改数据(Excel文件上传数据) 步骤1:输入事务码MASS进入 1处,输入需要修改的对象类型(参见对象类型清单) 2处,点击"执行"按钮 步骤2:选择需要修 ...
- axios文件上传 formdata_基于业务场景下的图片/文件上传方案总结
图片/文件上传组是企业项目开发中必不可少的环节之一, 但凡涉及到用户模块的都会有图片/文件上传需求, 在很多第三方组件库(ant desigin, element ui)中它也是基础组件之一. 接下来 ...
- php是视频还是图片格式,php 视频、音频和图片文件上传,该如何解决
PHP code<?php ob_start(); $uploadDir = dirname(__FILE__).'/upload'; //自动创建目录 if(!file_exists($upl ...
最新文章
- 多项式加法C语言_只愿与一人十指紧扣_新浪博客
- 在eclipse中使用JDBC连接MySQL5.7.24
- 刘涵 美国 西北大学 计算机,西北大学关于表彰2010-2011学年度学生先进集体-红帆.doc...
- java基础(四) java运算顺序的深入解析
- java循环满足跳出_java跳出循环的几种方式
- 程序员要记住的几条建议
- mfc程序转化为qt_10年程序员:我都学过这些语言,2019年开始我再也不是程序员......
- angular分页插件tm.pagination 解决触发二次请求的问题
- Revit API多选多重过滤
- AOJ GRL_1_A: Single Source Shortest Path (Dijktra算法求单源最短路径,邻接表)
- Stm32CubeMx lwip+freeRTOS TCP 服务
- 读华东师范大学数学系之《数学分析》
- 第八章 项目质量管理
- 在群晖(Synology) 中运行115网盘Linux版(docker)
- ArcGIS裁剪栅格图像(图片)后,图…
- 12306验证码识别
- 宽带按流量计费?欢迎讨论!
- 高能所客座用户计算机申请,2020年中科院高能所招收联合培养硕士博士生、客座研究生多名...
- 牛客网刷题java之(斐波那契数列)一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。
- 没噪音免更换滤网?贝昂JY200净化器评测