android-读取Assets图片资源保存到SD - 随心

public class ReadBitmap {

	public void readByte(Context c, String name, int indexInt) {
		byte[] b = null;
		int[] intArrat = c.getResources().getIntArray(indexInt);
		try {
			AssetManager am = null;
			am = c.getAssets();
			InputStream is = am.open(name);
			for (int i = 0; i < intArrat.length; i++) {
				b = new byte[intArrat[i]];
				// 读取数据
				is.read(b);
				saveMyBitmap(Bytes2Bimap(b), MainActivity.DIR+name+i+".jpg");
			}
			is.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public static Bitmap Bytes2Bimap(byte[] b) {
		if (b.length != 0) {
			return BitmapFactory.decodeByteArray(b, 0, b.length);
		} else {
			return null;
		}
	}
	
	public static boolean saveMyBitmap(Bitmap bmp, String path) {
		File f = new File(path);
		try {
			f.createNewFile();
			FileOutputStream fOut = new FileOutputStream(f);
			bmp.compress(Bitmap.CompressFormat.JPEG, 100, fOut);
			fOut.flush();
			fOut.close();
			return true;
		} catch (Exception e) {
			// TODO: handle exception
			e.printStackTrace();
		}
		return false;
	}
}
posted @ 2013-07-02 20:00  爱生活,爱编程  阅读(332)  评论(0编辑  收藏  举报