Android开发 文件的下载.doc_第1页
Android开发 文件的下载.doc_第2页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Android开发文件的下载 2011年9月29日9:44 来源:Android中文网 我有话说(0)实现的代码基本如下:public void downFile(String url, String path, String fileName)throws IOException if (fileName = null | fileName = )this.FileName = url.substring(url.lastIndexOf(/) + 1);elsethis.FileName = fileName; / 取得文件名,如果输入新文件名,则使用新文件名URL Url = new URL(url);URLConnection conn = Url.openConnection();conn.connect();InputStream is = conn.getInputStream();this.fileSize = conn.getContentLength();/ 根据响应获取文件大小if (this.fileSize = 0) / 获取内容长度为0throw new RuntimeException(无法获知文件大小 );if (is = null) / 没有下载流sendMsg(Down_ERROR);throw new RuntimeException(无法获取文件);FileOutputStream FOS = new FileOutputStream(path + this.FileName); / 创建写入文件内存流,通过此流向目标写文件byte buf = new byte1024;downLoadFilePosition = 0;int numread;while (numread = is.read(buf) != -1) FOS.write(buf, 0, numread);downLoadFilePosition += numreadtry is.close(); catch (Exception ex) ;通过此代码就可以实现将内容保存到SD卡等设备上,当然要使用网络,必须得有网络的访问权限。这个需要自己添加,在这里不再添加。上面的代码没有实现进度条功能,如果要实现进度条功能,我现在考虑到的就是使用消息进行发送提示,首先实现一个消息。private Handler downloadHandler = new Handler() / 用于接收消息,处理进度条Overridepublic void handleMessage(Message msg) / 接收到的消息,并且对接收到的消息进行处理if (!Thread.currentThread().isInterrupted() switch (msg.what) case DOWN_START:pb.setMax(fileSize); /设置开始长度case DOWN_POSITION:pb.setProgress(downLoadFilePosition); / 设置进度break;case DOWN_COMPLETE:Toast.makeText(DownLoadFileTest.this, 下载完成!, 1).show(); / 完成提示break;case Down_ERROR:String error = msg.getData().getString(下载出错!);Toast.makeT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论