Android 将文件下载到指定目录的实现代码
程序员文章站
2022-07-11 23:14:16
废话不多说了额,直接给大家贴代码了,具体代码如下所示:
/**
* 下载指定路径的文件,并写入到指定的位置
*
* @param dirn...
废话不多说了额,直接给大家贴代码了,具体代码如下所示:
/** * 下载指定路径的文件,并写入到指定的位置 * * @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 将文件下载到指定目录的实现代码,希望对大家有所帮助
上一篇: 社区团购半年融资超过20亿,如何避免“昙花一现”?
下一篇: 行至2019:苏宁即将重新定义618