Java 根据网络地址URL获取文件
一、功能需求
系统需要根据提供的文件地址URL获取该文件,代码实现如下:
二、解决办法
/*** 根据URL地址获取文件* @param path URL网络地址* @return File*/private static File getFileByHttpURL(String path){String newUrl = path.split("[?]")[0];String[] suffix = newUrl.split("/");//得到最后一个分隔符后的名字String fileName = suffix[suffix.length - 1];File file = null;InputStream inputStream = null;OutputStream outputStream = null;try{file = File.createTempFile("report",fileName);//创建临时文件URL urlFile = new URL(newUrl);inputStream = urlFile.openStream();outputStream = new FileOutputStream(file);int bytesRead = 0;byte[] buffer = new byte[8192];while ((bytesRead=inputStream.read(buffer,0,8192))!=-1) {outputStream.write(buffer, 0, bytesRead);}}catch (Exception e) {e.printStackTrace();}finally {try {if (null != outputStream) {outputStream.close();}if (null != inputStream) {inputStream.close();}} catch (Exception e) {e.printStackTrace();}}return file;}
Java 根据网络地址URL获取文件相关推荐
- java根据远程URL获取文件类型
通过给定url中获取文件文件类型,开始想到的方法是通过在url中切割获取,如以下url,可以通过切割字符串的方式获取到文件类型是jpg格式的: http://bpic.588ku.com/elemen ...
- java获取url文件格式_本地文件/url获取文件类型
package com.cjw.baidu.ocr; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringU ...
- java根据url获取文件流
最近的一个需求需要根据一个mp3的链接获取文件流上传到内部的存储平台, 记录一下获取文件流的代码吧. pom文件 <dependency><groupId>org.apache ...
- 根据url获取文件流MultipartFile
常见的url包含网络上一些图片的链接,静态服务器上边的图片地址等等,有时候一些链接内嵌到自己项目中时,由于图片大小或者网站的一些防盗处理,往往无法正确加载图片,因此需要单独做处理: 1.pom文件添加 ...
- java通过视频URL获取视频时长,无需下载视频,修复jave在linux上的bug
背景 项目中有一个需求,要获取前端上传过来的视频的时长.分辨率等信息.网上查了下,java后端基本上都是用的jave获取视频信息,jave的官网在此. 不过网上的教程都是获取本地视频的信息,jave提 ...
- Java 中几种获取文件路径的方式
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 公众号「码农小胖哥」 1. 前言 Java 开 ...
- Qt之HTTP之模仿迅雷——根据URL获取文件信息(上)
一.简述 最近再看Qt实现HTTP下载时,看了一下迅雷下载,发现迅雷做的很好,不论是界面还是下载速度都非常不错,今天看到迅雷9新建下载任务一个神奇效果,复制下载url到输入框,迅雷能够自动解析下载文 ...
- C# 根据url获取文件流流
/// <summary>/// 根据url获取流/// </summary>/// <param name="url">路径</para ...
- Java从指定URL下载文件并保存到指定目录
转自(留做笔记):https://www.cnblogs.com/henuyuxiang/p/11608936.html 1.基本流程 当我们想要下载网站上的某个资源时,我们会获取一个url,它是服务 ...
最新文章
- 面试笔记——C++11新特性
- b+树时间复杂度_阿里面试,问了B+树,这个回答让我通过了
- C# 之 static的用法详解
- lsof -i:port 的作用
- JAVA多线程及线程状态转换
- RQNOJ36 数石子 并查集 简单应用
- python创意实用案例-精心整理!9个 Python 实用案例分享
- ubuntu linux配置bond 网卡绑定 多个bond配置多网关
- Ruby First
- 软件工程师必读技术书籍推荐
- php 许愿墙 阶段案例_PHP+jQueryUI实现许愿墙功能、贴便签、贴标签功能(案例)...
- PLC中忘记cpu密码怎么办?
- 魅蓝e android无限重启,魅蓝E怎么Root?魅蓝E一键ROOT教程(系统自带Root功能)
- AWS云计算技术架构探索系列之一-开篇
- 特斯拉Powerwall网关可能受到黑客攻击
- 制作价目表的程序和软件
- python人工智能课程实例_python人工智能AI深度学习/机器学习全套课程 视频教程+ppt+代码...
- 学习REBOL 6.1
- 冀教版四年级计算机教案,冀教版小学信息技术四年级上册全册教案.doc
- python批量下载bilibi视频