首页 > 编程语言 >java通过url下载文件

java通过url下载文件

时间:2023-03-03 19:11:25浏览次数:41  
标签:java url inputStream printStackTrace fileOutputStream new null 下载

通过流的方式进行下载:
 
代码如下:

    /**
     * 通过url地址进行下载文件
     * @param url 网页地址
     * @param fileName 文件名,不包含文件路径需要自己配置
     */
    public static void downloadByUrl(String url,String fileName){
        BufferedInputStream inputStream=null;
        FileOutputStream fileOutputStream=null;
        try {
            URL path=new URL(url);
            inputStream=new BufferedInputStream(path.openStream());
            fileOutputStream=new FileOutputStream(fileName);
            byte[] bytes=new byte[1024];//1m
            int len=0;//为什么需要记录长度,便于在写入的时候确定长度
            while ((len=inputStream.read(bytes))!=-1){
                fileOutputStream.write(bytes,0,len);//将读取的文件进行写出
            }
            fileOutputStream.flush();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if (inputStream != null) {
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (fileOutputStream != null) {
                try {
                    fileOutputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

标签:java,url,inputStream,printStackTrace,fileOutputStream,new,null,下载
From: https://www.cnblogs.com/just1t/p/17176684.html

相关文章

  • Java基础易忘知识点
    Java基础易忘知识点位运算符(不完整)​ 11000101​ 10101100&:与运算 10000100 按位相与|:或运算 11101101 按位相或^:异或运算 01101001 相......
  • JavaDoc
    JavaDocjavadoc是用来生成帮助文档的常用参数:使用方式:在包下加入或者函数上面输入/**+回车......
  • java实现解压jar文件到某个目录/压缩某个目录为jar文件(好记性不如烂笔头)
    这里实现一个小功能,仅用于记忆功能:解压一个jar包到本地一个目录把一个目录压缩成一个jar包/***1,读取jar包,得到class文件*2,把class文件持久化到本地磁......
  • js如何准确获取当前页面url网址信息
    在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是我的一些获取url信息的小总结。下面我们举例一个URL,然后获得它的各个组成部分:http://i.jb51.net/Ed......
  • Landsat数据在USGS中无法下载Surface Reflectance产品的解决方法
      本文介绍在USGS官网下载Landsat遥感影像数据时,出现报错信息,无法下载地表反射率产品(SurfaceReflectance)的解决办法。  最近,利用这篇文章批量下载Landsat遥感影像的......
  • Java Agent场景性能测试分析优化经验分享
    摘要:本文将以Sermant的SpringBoot注册插件的性能测试及优化过程为例,分享在JavaAgent场景如何进行更好的性能测试优化及在JavaAgent下需要着重注意的性能陷阱。作者:栾文......
  • javaWeb学习一
    web开发(web就是网页):静态webhtml、css提供给所有人看到数据不会改变动态web提供给所有人看到数据会改变,不同用户、不同时间和地点都会不同技术栈:Se......
  • 关于Javascript——Promise的一些理解
    Promise是一个构造函数,promise是通过Promise构造函数声明的对象。 promise对象用来“管理”一次异步任务。 通过newPromise()声明一个promise对象的时候需要传两个参......
  • 如何通过Java 代码设置 Word 文档页边距
    页边距是指页面的边线到文字的距离。通常可在页边距内部的可打印区域中插入文字和图形,也可以将某些项目放置在页边距区域中(如页眉、页脚和页码等)。在我们用的Word文档中,都会......
  • Java应用【Ⅻ】使用Java实现机器学习算法:聚类、分类、预测
    一、引言1、机器学习算法概述机器学习是一种人工智能技术,旨在通过使用数据和统计分析来让计算机系统自动改进性能。机器学习算法可分为三大类:聚类、分类和预测。聚类算法用......