732003684

导航

【转】android:网络图片转为bitmap 保存至SD卡中

调用 :saveFile(BaseMean.returnBitMap(mPhotoShowed),"hi.jpg");

 


/**
   * return a bitmap from service
   * @param url
   * @return bitmap type
   */
  public final static Bitmap returnBitMap(String url) {   
   URL myFileUrl = null;   
   Bitmap bitmap = null;   
   
   try {
    myFileUrl = new URL(url);    
    HttpURLConnection conn;
  
    conn = (HttpURLConnection) myFileUrl.openConnection();
   
    conn.setDoInput(true);   
    conn.connect(); 
    InputStream is = conn.getInputStream();   
    bitmap = BitmapFactory.decodeStream(is);  
    
   } catch (MalformedURLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }  catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   return bitmap;  
   }

 


public static String getSDPath(){
  File sdDir = null;
  boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED); //判断sd卡是否存在
  if (sdCardExist)
  {
   sdDir = Environment.getExternalStorageDirectory();//获取跟目录
  }
  return sdDir.toString();   
 }
 



   /** 
     * 保存文件 
     * @param bm 
     * @param fileName 
     * @throws IOException 
     */  
    public void saveFile(Bitmap bm, String fileName) throws IOException { 
     String path = getSDPath() +"/revoeye/";     
        File dirFile = new File(path);  
        if(!dirFile.exists()){  
            dirFile.mkdir();  
        }  
        File myCaptureFile = new File(path + fileName);  
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(myCaptureFile));  
        bm.compress(Bitmap.CompressFormat.JPEG, 80, bos);  
        bos.flush();  
        bos.close();  
    }

posted on 2012-11-01 09:34  732003684  阅读(256)  评论(0编辑  收藏  举报