AsyncTask下载文件
来源:互联网 发布:淘宝上的祛湿茶哪个好 编辑:程序博客网 时间:2024/05/16 18:53
AsyncTask下载文件
// 文件保存路径 String savePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/"; public void myClick(View view) { String downUrl = "http://192.168.1.106/MPC-HC.1.7.10.x86.zip"; new DownloadTask().execute(downUrl); } /** * @params String 下载路径 * @params Integer 下载进度 * @params String 下载结果 */ class DownloadTask extends AsyncTask<String, Integer, String> { @Override protected String doInBackground(String... params) { URL url = null; InputStream is = null; FileOutputStream fos = null; String result = ""; try { // 创建URL对象 url = new URL(params[0]); // 打开连接 URLConnection connection = url.openConnection(); // 获取下载文件总长度 int totalLength = connection.getContentLength(); // 获取输入流 is= connection.getInputStream(); int indexOf = params[0].lastIndexOf('/'); // 截获文件名 String filename = params[0].substring(indexOf); // 获取输出流 fos = new FileOutputStream(savePath + filename); int len = 0; int sum = 0; byte[] bytes = new byte[1024]; while (-1!=(len=is.read(bytes))){ fos.write(bytes,0,len); sum +=len; // 推送下载进度 publishProgress(sum*100/totalLength); } result = "下载成功"; } catch (MalformedURLException e) { result = "下载失败"; e.printStackTrace(); } catch (IOException e) { result = "下载失败"; e.printStackTrace(); } return result; } /** * 在此方法中更新下载进度 * @param values */ @Override protected void onProgressUpdate(Integer... values) { super.onProgressUpdate(values); mTv.setText("当前进度"+values[0]+"%"); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); mTv.setText(s); } }
0 0
- AsyncTask下载文件
- AsyncTask下载文件
- AsyncTask异步实现文件下载
- android.os.AsyncTask(文件下载)
- AsyncTask异步实现文件下载
- android AsyncTask下载文件并且显示进度
- 使用AsyncTask实现异步文件下载
- Android AsyncTask异步实现大文件下载
- AsyncTask下载
- AsyncTask下载网络文件,并显示下载进度
- 版本更新 下载APK asynctask下载文件 保存到本地
- Android学习笔记之AsyncTask实现文件下载任务
- Android之AsyncTask的使用(二)之文件下载
- AsyncTask下载大文件并可以取消异步任务
- AsyncTask的详解与服务的结合下载文件例子
- AsyncTask异步下载图片
- AsyncTask & HttpClient 下载图片
- AsyncTask下载图片
- iOS学习笔记(八)——iOS网络通信http之NSURLConnection
- ios transform 动画效果
- Bash-Completion 自动补全
- Caffe梯度传播过程
- 半平面交的模板
- AsyncTask下载文件
- iOS中 iOS10 权限崩溃问题 韩俊强的CSDN博客
- 经典博弈a
- Android内存溢出与优化(二)——不做无意义的内存消耗
- Android Studio 快捷健
- 关于php的普通赋值和引用赋值
- JMS入门(1)
- 配置Tomcat使用https协议(配置SSL协议)
- HDU 3507 斜率优化入学习