zoukankan      html  css  js  c++  java
  • 下载远程url文件(或者文件流)到本地

    这里的remoteFilePath 为远程文件,可理解为就是一个文件地址(实际可能为返回的文件流)

    /** 
         * 获取远程文件 
         * @param remoteFilePath 远程文件路径  
         * @param localFilePath 本地文件路径 
         */
        public void downloadFile(String remoteFilePath, String localFilePath)
        {
            URL urlfile = null;
            HttpURLConnection httpUrl = null;
            BufferedInputStream bis = null;
            BufferedOutputStream bos = null;
           
            String fileName = "mcsetup.exe";
            String ramdom = System.currentTimeMillis() + ""
            + new Random().nextInt(100) + new Random().nextInt(100)
            + new Random().nextInt(100) + getSequence();
            fileName = ramdom + "_" + fileName;
            File f = new File(localFilePath+fileName);
            try
            {
                urlfile = new URL(remoteFilePath);
                httpUrl = (HttpURLConnection)urlfile.openConnection();
                httpUrl.connect();
                bis = new BufferedInputStream(httpUrl.getInputStream());
                bos = new BufferedOutputStream(new FileOutputStream(f));
                int len = 2048;
                byte[] b = new byte[len];
                while ((len = bis.read(b)) != -1)
                {
                    bos.write(b, 0, len);
                }
                bos.flush();
                bis.close();
                httpUrl.disconnect();
            }
            catch (Exception e)
            {
               e.printStackTrace();
            }
            finally
            {
                try
                {
                    bis.close();
                    bos.close();
                }
                catch (IOException e)
                {
                   e.printStackTrace();
                }
            }
        }

  • 相关阅读:
    转自一位前辈的杂谈
    在vim编辑器中实现python的tab补全
    Go语言 异常panic和恢复recover用法
    go语言的cron包的简单使用
    go语言的指针
    Python 报 OpenSSL.SSL.SysCallError: (10054, 'WSAECONNRESET')
    python 之图像处理
    git 线上连接及版本控制
    vue依赖pycharm启动
    模拟django 后台管理
  • 原文地址:https://www.cnblogs.com/qqzy168/p/3070576.html
Copyright © 2011-2022 走看看