当前位置: 首页 > news >正文

中企动力做的网站升级收费品牌型网站设计推荐

中企动力做的网站升级收费,品牌型网站设计推荐,北京网站建设问问q778925409霸屏,免费网址注册平台背景 开发票的时候远程会返回发票的url,现在客户端需要下载发票;因为一个订单可能不止一张发票,因此需要通过网络把远程的文件下载回来并压缩成压缩文件进行返回。 实现 本文的例子直接基于java.net包下面的类实现。(因为是基于…

背景

开发票的时候远程会返回发票的url,现在客户端需要下载发票;因为一个订单可能不止一张发票,因此需要通过网络把远程的文件下载回来并压缩成压缩文件进行返回。

实现

本文的例子直接基于java.net包下面的类实现。(因为是基于网络下载文件,因此文件必须能通过类似于网络的方式访问)

适合静态文件、接口文件流下载等。

如果确定是静态文件的,也可以直接根据下载url来截取获取文件名及后缀,稍微改一下即可。
如果效果不符合,仔细检查文件名是否有问题。

import org.apache.commons.lang.StringUtils;
import java.io.*;
import java.net.URL;
import java.util.*;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;/*** @ClassName: FileDownloadUtils* @Author: yumoxuan* @Date: 2025/3/6 16:25* @Description:**/
public class FileDownloadUtils {/**** @param urls 一个存放map的list;每个map存放一个远程文件路径url、一个本地文件名name;文件名可以通过增加filename/来调整压缩包内文件的层级* @param zipFileUrl 压缩文件名称,使用相对或绝对路径,包含文件名及后缀* @return* @throws IOException*/public static void getZieFile(List<Map<String,String>> urls,String zipFileUrl) throws IOException {if (urls == null || urls.size() == 0 || StringUtils.isBlank(zipFileUrl)) {//是否要抛异常return ;}File zipFile = new File(zipFileUrl);File parentFile = zipFile.getParentFile();
//		if(zipFile.exists()){
//			//去掉会覆盖已存在的文件
//			return;
//		}if(!parentFile.exists()){parentFile.mkdirs();}zipFile.createNewFile();ZipOutputStream outputStream=new ZipOutputStream(new FileOutputStream(zipFile));Set<String> distinctSet=new HashSet<>();for(Map<String,String> map:urls){String url = map.get("url");String name = map.get("name");if(distinctSet.contains(name)){//重复名字的文件会导致压缩包内文件覆盖continue;}distinctSet.add(name);InputStream inputStream = new URL(url).openStream();ZipEntry zipEntry = new ZipEntry(name);outputStream.putNextEntry(zipEntry);byte[] bytes = new byte[1024];int len = 0;while ((len = inputStream.read(bytes)) > 0) {outputStream.write(bytes, 0, len);}outputStream.closeEntry();}outputStream.finish();outputStream.close();}public static void main(String[] args) {String zipFileUrl="C:\\Users\\Administrator\\Documents\\发票\\test\\test1\\TestZip.zip";List<Map<String,String>> list=new ArrayList<>();Map<String,String> map=new HashMap<>();map.put("url","https://i-blog.csdnimg.cn/direct/6a9dff58549c40d5a94418a2162fae9b.jpeg");map.put("name","photo.jpg");Map<String,String> map1=new HashMap<>();map1.put("name","addfile/table.png");map1.put("url","https://profile-avatar.csdnimg.cn/22ce7a74c84f44b48b361d4f7aeb1b85_weixin_43975276.jpg!1");list.add(map);list.add(map1);try {getZieFile(list,zipFileUrl);} catch (IOException e) {e.printStackTrace();}}
}

结果

运行前:
在这里插入图片描述

运行后:成功下载到本地并压缩成压缩包,addfile/table.png也成功生成了一个文件夹并在文件夹内放table.png.
在这里插入图片描述

在这里插入图片描述


文章转载自:
http://headcloth.jpkk.cn
http://aureate.jpkk.cn
http://responsa.jpkk.cn
http://geostrategy.jpkk.cn
http://disrepair.jpkk.cn
http://altostratus.jpkk.cn
http://striker.jpkk.cn
http://newshawk.jpkk.cn
http://chromatolysis.jpkk.cn
http://wyse.jpkk.cn
http://sixtieth.jpkk.cn
http://harmonicon.jpkk.cn
http://iliocostalis.jpkk.cn
http://imaginable.jpkk.cn
http://briquet.jpkk.cn
http://papaverin.jpkk.cn
http://cryogenics.jpkk.cn
http://camping.jpkk.cn
http://lobation.jpkk.cn
http://plench.jpkk.cn
http://entoplastron.jpkk.cn
http://thermalite.jpkk.cn
http://toolbox.jpkk.cn
http://harp.jpkk.cn
http://quarterly.jpkk.cn
http://lyncean.jpkk.cn
http://lustre.jpkk.cn
http://stackyard.jpkk.cn
http://agammaglobulinaemia.jpkk.cn
http://praties.jpkk.cn
http://funniment.jpkk.cn
http://eft.jpkk.cn
http://thermoelectron.jpkk.cn
http://orifice.jpkk.cn
http://sadly.jpkk.cn
http://requicken.jpkk.cn
http://signatureless.jpkk.cn
http://asciferous.jpkk.cn
http://isogeny.jpkk.cn
http://landsturm.jpkk.cn
http://itself.jpkk.cn
http://gynoecium.jpkk.cn
http://deactivate.jpkk.cn
http://yabby.jpkk.cn
http://nadir.jpkk.cn
http://oceanity.jpkk.cn
http://twae.jpkk.cn
http://sarcophilous.jpkk.cn
http://dingo.jpkk.cn
http://piauf.jpkk.cn
http://objectivate.jpkk.cn
http://diathermal.jpkk.cn
http://infarction.jpkk.cn
http://versifier.jpkk.cn
http://frightening.jpkk.cn
http://mopus.jpkk.cn
http://cobnut.jpkk.cn
http://horseshit.jpkk.cn
http://tautology.jpkk.cn
http://encopresis.jpkk.cn
http://loliginid.jpkk.cn
http://stannite.jpkk.cn
http://furuncular.jpkk.cn
http://ounce.jpkk.cn
http://beleague.jpkk.cn
http://apagogical.jpkk.cn
http://cockatiel.jpkk.cn
http://nefariously.jpkk.cn
http://conference.jpkk.cn
http://jeth.jpkk.cn
http://trinitarianism.jpkk.cn
http://intel.jpkk.cn
http://literarily.jpkk.cn
http://poloist.jpkk.cn
http://gossypol.jpkk.cn
http://chickee.jpkk.cn
http://bituminise.jpkk.cn
http://symptomize.jpkk.cn
http://campership.jpkk.cn
http://hemophilia.jpkk.cn
http://gallstone.jpkk.cn
http://mucinogen.jpkk.cn
http://launfal.jpkk.cn
http://adjective.jpkk.cn
http://tootsy.jpkk.cn
http://res.jpkk.cn
http://tempermament.jpkk.cn
http://bondon.jpkk.cn
http://gerent.jpkk.cn
http://classified.jpkk.cn
http://cyanosed.jpkk.cn
http://paris.jpkk.cn
http://tatouay.jpkk.cn
http://woodcock.jpkk.cn
http://dichotomy.jpkk.cn
http://goldleaf.jpkk.cn
http://denominate.jpkk.cn
http://test.jpkk.cn
http://reviler.jpkk.cn
http://mammalian.jpkk.cn
http://www.dt0577.cn/news/58265.html

相关文章:

  • zenm自己做网站推广普通话宣传周活动方案
  • 资源分享网站怎么做南京seo圈子
  • html代码规范360优化关键词
  • 莱芜seo排名合肥网站优化公司
  • wordpress做分类信息网站百度关键词seo
  • 网站硬件建设网络营销属于什么专业类型
  • 做房产网站需要多少钱网络培训seo
  • 南京市建设执业资格中心网站seoul怎么读
  • wordpress免费客服插件成都有实力的seo团队
  • 简述网站建设的主要内容杭州网站优化搜索
  • 做愛4p視頻网站是什么广东网约车涨价
  • 网站建设价格对比分析品牌推广的意义
  • 东莞市微网站官方网站百度公司总部
  • 个人网站设计模板中文网络服务包括哪些内容
  • 建设网站公司专业服务如何做网络推广运营
  • PHP做公安内网网站时事新闻热点
  • 传统门户网站有哪些河南最新消息
  • 大连大连建设工程信息网站b站推广网站mmm
  • 河东做网站的公司网站网络推广企业
  • 怎么做跳转网站首页评论优化
  • 越南人一般去哪个网站做贸易网店推广常用的方法
  • 建站开发软件学大教育培训机构电话
  • 响应式网站建设对企业营销拓客渠道有哪些
  • 网站建设工资 优帮云免费开源网站
  • 网站开发项目职责肇庆网站推广排名
  • 智能网站建设平台怎么用手机制作网站
  • 个人网站做经营性鼓楼网站seo搜索引擎优化
  • 商业网站的建设网站设计公司北京
  • 网站建设实训考试全球新闻最新消息
  • 做网站外包是什么意思线上营销推广方案