Java将远程文件存储到本地指定的目录

/**
     * 远程下载文件
     * @param filePath 文件网络地址
     */
    public static void DownAndReadFile(String filePath,String dirPath) throws Exception {
        //检查指定目录,用户没有指定目录 抛出异常提示用户
        if(dirPath==null||dirPath.length()==0)throw new Exception("指定路径目录不能为空");

        //创建file文件对象
        File savePath = new File(dirPath);
        //判断文件目录是否存在,不存在即创建目录
        if (!savePath.exists()) {
            savePath.mkdir();
        }
        String[] urlname = filePath.split("/");
        int len = urlname.length-1;
        //获取文件名
        String uname = urlname[len];
        File file = new File(savePath+"//"+uname);
        //创建新文件
        if(file!=null && !file.exists()){
            file.createNewFile();
        }
        //输出流
        OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(file));
        URL url = new URL(filePath);
        //获取链接
        HttpURLConnection uc = (HttpURLConnection) url.openConnection();
        uc.setDoInput(true);//设置是否要从 URL 连接读取数据,默认为true
        uc.connect();
        //获取输入流,读取文件
        InputStreamReader in = new InputStreamReader(uc.getInputStream());
        char[] buffer = new char[4*1024];
        int length;
        //读取文件
        while((length=in.read(buffer))!= -1){
            //写出
            out.write(buffer, 0, length);
        }
        out.flush();
        in.close();
        out.close();
    }
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郑洁文

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值