[Android实例] 文件的下载以及将下载的文件存放到SD卡中
2012-11-02 14:40
405 查看
public String downLoadText(String urlStr){ StringBuffer sb=new StringBuffer(); String line=null; BufferedReader buffer=null; try { //创建一个URL对象 url=new URL(urlStr); //创建一个Http连接 try { HttpURLConnection urlConn=(HttpURLConnection)url.openConnection(); //使用IO流读取数据 buffer=new BufferedReader(new InputStreamReader(urlConn.getInputStream())); while ((line = buffer.readLine()) != null) { sb.append(line); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return sb.toString(); }
/* * 该函数返回整形-1:代表下载文件出错。 * 0:代表下载文件成功 * 1:代表下载文件经存在 */ public int downLoadFile(String urlStr,String path,String fileName){ InputStream inputStream=null; GoToSDCard gotoSDCard=new GoToSDCard(); if(gotoSDCard.isFileExist(path+fileName)) { return 1; }else{ try { url=new URL(urlStr); HttpURLConnection urlConn=(HttpURLConnection)url.openConnection(); InputStream 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; } }
<uses-permission android:name="android.permission.INTERNET"/>//从网络中下载文件需要的权限 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>//向SD卡需要加入的写权限
相关文章推荐
- 文件的下载以及将下载的文件存放到SD卡中
- 关于Android在网络上下载文件以及向SD卡中写入文件
- Android中搜索SD卡文件的开发实例
- Android APK文件下载 并自动安装 显示文件下载进度,速度,以及花费时间
- Android 下载文件及写入SD卡
- Android:文件下载和写入SD卡学习小结
- Android 线程池及多线程下载,Progressbar动态更新以及文件保存sd卡
- Android基于HttpUrlConnection类的文件下载实例代码
- Android:文件下载和写入SD卡
- Android从网络某个地址下载文件、写入SD卡
- Android zip文件下载和解压实例
- android SD卡目录下创建、复制文件夹以及文件
- Android 线程池及多线程下载,Progressbar动态更新以及文件保存sd卡
- Android和FTP服务器交互,上传下载文件(实例demo)
- android 使用AsyncHttpClient框架上传文件以及使用HttpURLConnection下载文件
- android:http下载文件并保存到本地或SD卡
- Android的SD卡文件读写的帮助类——FileHelper,以及查询SD卡是否存在及其容量的方法
- android下载编译以及文件系统提取总结
- android-关于下载网络资源以及写入到SD卡中
- Android开发九:从网上下载文件并存储到SD卡中