/**
* 保存圖片到緩存
*
* @param imagePath
* @param bm
*/
public static void saveImage(String imagePath, Bitmap bm) {
if (bm == null || imagePath == null || "".equals(imagePath)) {
return;
}
File f = new File(imagePath);
if (f.exists()) {
return;
} else {
try {
File parentFile = f.getParentFile();
if (!parentFile.exists()) {//如果不存在此目錄則創建
parentFile.mkdirs();
}
f.createNewFile();//創建圖片文件
FileOutputStream fos;
fos = new FileOutputStream(f);
bm.compress(Bitmap.CompressFormat.PNG, 100, fos);
fos.close();
} catch (FileNotFoundException e) {
f.delete();
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
f.delete();
}
}
}
/**
* 獲取網絡圖片的數據
*
* @param imgUrl
* 網絡圖片的路徑
* @return
*/
public static Bitmap getImage(String imgUrl) throws Exception {
URL url = new URL(imgUrl);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
System.out.println("path:" + imgUrl);
conn.setConnectTimeout(5000);
conn.setRequestMethod("GET");
if (conn.getResponseCode() == 200) {
InputStream inStream = conn.getInputStream();
byte[] img = StreamTool.read(inStream);
Bitmap bitmap = BitmapFactory.decodeByteArray(img, 0, img.length);
File sdCardDir = Environment.getExternalStorageDirectory();
String imgPath = sdCardDir.getCanonicalPath() + "/hubuyiyuImg/helloAndroid.jpg";
saveImage(imgPath, bitmap);
return bitmap;
}
return null;
}