/*
* 该函数返回整形-1:代表下载文件出错。
* 0:代表下载文件成功
* 1:代表下载文件经存在
*/
public int downLoadFile(String urlStr,String path,String fileName){
InputStream inputStream=null;
URL url;
GoToSDCard gotoSDCard=new GoToSDCard();
if(gotoSDCard.isFileExist(path+fileName)){
return 1;
}else{
try {
url=new URL(urlStr);
HttpURLConnection urlConn=(HttpURLConnection)url.openConnection();
inputStream=urlConn.getInputStream(); 
File resultFile=gotoSDCard.write2SDFromInput(path, fileName,inputStream);//将数据流保存到SD卡当中
if(resultFile==null){
return -1;
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
inputStream.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();}
}
}
return 0;
}

public class GoToSDCard {

private String SDPATH=null;

public String getSDPATH(){
return SDPATH; 
}

public GoToSDCard(){
//得到当前外部存储设备的目录
// SDCARD
SDPATH=Environment.getExternalStorageDirectory()+"/";
System.out.println("SDPATH="+SDPATH);
}

/*
*在SD卡上创建文件 
*/
public File CreatSDFile(String fileNmae){
File file =new File(SDPATH+fileNmae);
try {
file.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return file;
}
/*
* 在SD卡上创建目录
*/
public File creatSDDir(String dirName){

File dir=new File(SDPATH+dirName);
if(!dir.exists()){
dir.mkdirs();
}
return dir;
}
/*
*判断SD卡上的文件夹是否存在
*/
public boolean isFileExist(String fileName){
File file =new File(SDPATH+fileName);
return file.exists();
}
/*
*将一个InputSteam里面的数据写入到SD卡中 
*/
public File write2SDFromInput(String path,String fileName,InputStream input){
System.out.println("path="+path+";fileName="+fileName+";");
File file =null;
File folder=null;
OutputStream output=null;
try {
folder=creatSDDir(path);
System.out.println("folder="+folder);
file=CreatSDFile(path+fileName);
System.out.println("file="+file);
output=new FileOutputStream(file);
byte buffer[]=new byte[4*1024];
while((input.read())!=-1){
output.write(buffer);
}
output.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try{
output.close();
}catch(Exception e){
e.printStackTrace();
}
}
return file;
}

}

安卓下载保存到本地(二)相关推荐

  1. 安卓下载保存到本地(一)

    public void getFileFromServer(String path) throws Exception{ HttpClient client = new DefaultHttpClie ...

  2. python下载图片并保存_Python爬虫获取图片并下载保存至本地的实例

    1.抓取煎蛋网上的图片. 2.代码如下: import urllib.request import os #to open the url def url_open(url): req=urllib. ...

  3. Python利用bs4批量抓取网页图片并下载保存至本地

    Python利用bs4批量抓取网页图片并下载保存至本地 使用bs4抓取网页图片,bs4解析比较简单,需要预先了解一些html知识,bs4的逻辑简单,编写难度较低.本例以抓取某壁纸网站中的壁纸为例.(b ...

  4. 手机壁纸设置以及图片下载保存到本地

    首先下载网络图片(权限自己处理) public Bitmap GetImageInputStream(final String imageurl, final int i) { //i根据自己的业务做 ...

  5. 微信表情包下载保存到本地,(新版微信可用)简单教程

    问题:微信新版无法保存表情包(微信表情包加密),且微信网页版不能登录 方法一: 1.登录你的企业微信.添加外部微信联系人(自己的微信号) 2.微信(自己的微信号)向企业微信发送表情 3.企业微信点击表 ...

  6. Python爬虫:批量爬取变形金刚图片,下载保存到本地。

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 本文文章来自:CSDN 作者:Guapifang 其实和爬取普通数据本质一样,不过 ...

  7. python爬虫怎么下载图片到手机_Python爬虫获取图片并下载保存至本地

    1.抓取煎蛋网上的图片. 2.代码如下: import urllib.request import os #to open the url def url_open(url): req=urllib. ...

  8. php 图片保存到本地文件,php 远程图片保存到本地的函数类

    php 远程图片保存到本地的函数类 发布于 2014-10-06 14:15:40 | 78 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext Pr ...

  9. requests+re模块爬取豆瓣排行版电影和图片保存至本地

    设计思路:requests发送请求返回HTML→正则匹配电影名称+图片地址→电影名称+图片地址下载保存至本地 from loguru import logger import requests imp ...

最新文章

  1. 映射date类型_JPA 日历映射到日期示例
  2. AspNetDB.mdf数据库的建立和使用
  3. 送人玫瑰,手留余香,如果本博客帮助到你了,帮忙点开本篇投上一票
  4. idea maven 删除dependencies_使用IDEA创建Maven工程 创建javase工程
  5. 【.Net Framework 体积大?】不安装.net framework 也能运行!?原理补充-3
  6. 一个简单的登录注册页面html代码
  7. 机器学习项目 - ctr 电商点击率预估
  8. 世界各国首都经纬度-json
  9. Delphi网络游戏外挂制作
  10. 安全设置 不允许 html,当前安全设置不允许该文件,教您当前安全设置不允许该文件怎么解决...
  11. 戴尔服务器引导盘装2008,DELL R720服务器安装Windows Server 2008 R2系统的图文详解
  12. 什么是布控球,作用是什么?
  13. 国内机器视觉发展如何实现逆风翻盘?
  14. 微信小程序开发之实现一个弹幕评论
  15. Booksir路线:先成材,再成功,警察到书生的传奇(转载)
  16. 网络空间安全---计算机网络安全概述
  17. 李航《统计学习方法》第二版 实战(mnist为例)
  18. 【C语言程序设计】实验 6
  19. .NET轻量级MVC框架:Nancy入门教程(二)——Nancy和MVC的简单对比
  20. 2018年贺岁档电影票房大数据报告!国产电影的黄金时代已经到来?

热门文章

  1. java 着色问题 回溯算法,C语言使用回溯法解旅行售货员问题与图的m着色问题
  2. 计算机会计课程试题及答案,会计电算化课后简答题及答案.doc
  3. 派衰计算机,知乎:格局派和旺衰派的区别,两者各有什么优缺点?
  4. php伪静态url运用,再谈 THINKPHP 伪静态url(URL访问模式)的设置
  5. Javascript中使用正则表达式进行数据验证
  6. java 对象的解释过程
  7. 谈谈如何使用Netty开发实现高性能的RPC服务器
  8. 201621123058《java程序设计》第二周学习总结
  9. 【转】用BlazeMeter录制JMeter测试脚本
  10. 1289 大鱼吃小鱼