zoukankan      html  css  js  c++  java
  • java 从网络Url中下载文件 (转)

    http://blog.csdn.net/xb12369/article/details/40543649/

    /** 
         * 从网络Url中下载文件 
         * @param urlStr 
         * @param fileName 
         * @param savePath 
         * @throws IOException 
         */  
        public static void  downLoadFromUrl(String urlStr,String fileName,String savePath) throws IOException{  
            URL url new URL(urlStr);    
            HttpURLConnection conn = (HttpURLConnection)url.openConnection();    
                    //设置超时间为3秒  
            conn.setConnectTimeout(3*1000);  
            //防止屏蔽程序抓取而返回403错误  
            conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");  
      
            //得到输入流  
            InputStream inputStream = conn.getInputStream();    
            //获取自己数组  
            byte[] getData = readInputStream(inputStream);      
      
            //文件保存位置  
            File saveDir = new File(savePath);  
            if(!saveDir.exists()){  
                saveDir.mkdir();  
            }  
            File file new File(saveDir+File.separator+fileName);      
            FileOutputStream fos new FileOutputStream(file);       
            fos.write(getData);   
            if(fos!=null){  
                fos.close();    
            }  
            if(inputStream!=null){  
                inputStream.close();  
            }  
      
      
            System.out.println("info:"+url+" download success");   
      
        }  
      
      
      
        /** 
         * 从输入流中获取字节数组 
         * @param inputStream 
         * @return 
         * @throws IOException 
         */  
        public static  byte[] readInputStream(InputStream inputStream) throws IOException {    
            byte[] buffer = new byte[1024];    
            int len = 0;    
            ByteArrayOutputStream bos new ByteArrayOutputStream();    
            while((len = inputStream.read(buffer)) != -1) {    
                bos.write(buffer, 0, len);    
            }    
            bos.close();    
            return bos.toByteArray();    
        }    
      
        public static void main(String[] args) {  
            try{  
                downLoadFromUrl("http://101.95.48.97:8005/res/upload/interface/apptutorials/manualstypeico/6f83ce8f-0da5-49b3-bac8-fd5fc67d2725.png",  
                        "百度.jpg","d:/resource/images/diaodiao/country/");  
            }catch (Exception e) {  
                // TODO: handle exception  
            }  
        }  
  • 相关阅读:
    ubuntu安装gradle
    ubuntu文件查找
    接口服务flask的负载均衡部署
    区块链节点网络的nginx转发部署
    typescript检查包之间是否有循环依赖
    shiro对事务的影响
    防止xss(脚本攻击)的方法之过滤器
    Mysql批量更新速度慢的解决方案
    springBoot的三种启动方式
    mybatis的注解开发之三种动态sql
  • 原文地址:https://www.cnblogs.com/quietwalk/p/6543094.html
Copyright © 2011-2022 走看看