Android 将文件下载到指定目录的实现代码

作者:走着学磔 时间:2021-06-11 04:44:41 

废话不多说了额,直接给大家贴代码了,具体代码如下所示:


/**
  * 下载指定路径的文件,并写入到指定的位置
  *
  * @param dirName
  * @param fileName
  * @param urlStr
  * @return 返回0表示下载成功,返回1表示下载出错
  */
 public int downloadFile(String dirName, String fileName, String urlStr) {
   OutputStream output = null;
   try {
     //将字符串形式的path,转换成一个url
     URL url = new URL(urlStr);
     //得到url之后,将要开始连接网络,以为是连接网络的具体代码
     //首先,实例化一个HTTP连接对象conn
     HttpURLConnection conn = (HttpURLConnection) url.openConnection();
     //定义请求方式为GET,其中GET的大小写不要搞错了。
     conn.setRequestMethod("GET");
     //定义请求时间,在ANDROID中最好是不好超过10秒。否则将被系统回收。
     conn.setConnectTimeout(6 * 1000);
     //请求成功之后,服务器会返回一个响应码。如果是GET方式请求,服务器返回的响应码是200,post请求服务器返回的响应码是206(貌似)。
     if (conn.getResponseCode() == 200) {
       //返回码为真
       //从服务器传递过来数据,是一个输入的动作。定义一个输入流,获取从服务器返回的数据
       InputStream input = conn.getInputStream();
       File file = createFile(dirName + fileName);
       output = new FileOutputStream(file);
       //读取大文件
       byte[] buffer = new byte[1024];
       //记录读取内容
       int n = input.read(buffer);
         //写入文件
         output.write(buffer, 0, n);
         n = input.read(buffer);
       }
       output.flush();
        input.close();
     }
   } catch (MalformedURLException e) {
     e.printStackTrace();
   } catch (Exception e) {
     e.printStackTrace();
   } finally {
     try {
       output.close();
       System.out.println("success");
       return 0;
     } catch (IOException e) {
       System.out.println("fail");
       e.printStackTrace();
     }
   }
   return 1;
 }
 /**
  * 在SD卡的指定目录上创建文件
  *
  * @param fileName
  */
 public File createFile(String fileName) {
   File file = new File(fileName);
   try {
     file.createNewFile();
   } catch (IOException e) {
     e.printStackTrace();
   }
   return file;
 }

以上所述是小编给大家介绍的Android 将文件下载到指定目录的实现代码网站的支持!

来源:http://blog.csdn.net/wei8023hzp/article/details/73614811

标签:android,文件,下载,目录
0
投稿

猜你喜欢

  • java io文件操作删除文件或文件夹的7种方法

    2022-08-09 13:29:21
  • C# 使用PictureBox实现图片按钮控件的示例步骤

    2023-04-04 21:33:29
  • Android中控件GridView实现设置行列分割线的方法示例

    2021-05-24 09:08:48
  • Android系统自带分享图片功能

    2022-08-03 09:14:07
  • Spring Boot实现分布式锁的自动释放的示例代码

    2023-10-17 11:06:24
  • c#中Empty()和DefalutIfEmpty()用法分析

    2022-05-20 12:58:55
  • 解读在C#中winform程序响应键盘事件的详解

    2023-10-08 09:17:00
  • 详解使用JRebel插件实现SpringBoot应用代码热加载

    2021-06-15 10:39:00
  • 浅谈Java变量的初始化顺序详解

    2023-07-26 03:23:17
  • springboot vue测试平台开发调通前后端环境实现登录

    2021-08-13 03:54:02
  • Android 听筒模式的具体实现实例

    2023-09-24 03:13:01
  • c#汉诺塔的递归算法与解析

    2022-08-13 08:13:59
  • c# AcceptEx与完成端口(IOCP)结合的示例

    2023-07-29 01:46:24
  • java编码IDEA主题推荐

    2021-10-21 03:54:18
  • 深入了解Java虚拟机栈以及内存模型

    2022-02-17 13:37:50
  • Java简单实现SpringMVC+MyBatis分页插件

    2023-09-09 23:08:45
  • javaSE基础如何通俗的理解javaBean是什么

    2023-09-20 00:34:13
  • Java Base64算法实际应用之邮件发送实例分析

    2022-08-08 04:00:04
  • Android实现按钮拖拽还原功能

    2023-10-22 18:31:13
  • Kotlin语言编程Regex正则表达式实例详解

    2023-06-22 02:06:29
  • asp之家 软件编程 m.aspxhome.com