androidはローカルまたはネットワーク画像を読み出し、Bitmapに変換する.


androidプロジェクトをする時、私達はいつもローカルまたはネットワークから画像を読み込む必要があります.Bitmap画像に変換して使用します.以下はローカル画像を読み取り、変換する方法です.
/**
	 *           bitmap url -              ,  :
	 * 
	 * A.    : url="http://blog.foreverlove.us/girl2.png" ;
	 * 
	 * B.    :url="file://mnt/sdcard/photo/image.png";
	 * 
	 * C.        ,png, jpg,bmp,gif  
	 * 
	 * @param url
	 * @return
	 */
	public static Bitmap GetLocalOrNetBitmap(String url)
	{
		Bitmap bitmap = null;
		InputStream in = null;
		BufferedOutputStream out = null;
		try
		{
			in = new BufferedInputStream(new URL(url).openStream(), Constant.IO_BUFFER_SIZE);
			final ByteArrayOutputStream dataStream = new ByteArrayOutputStream();
			out = new BufferedOutputStream(dataStream, Constant.IO_BUFFER_SIZE);
			copy(in, out);
			out.flush();
			byte[] data = dataStream.toByteArray();
			bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
			data = null;
			return bitmap;
		}
		catch (IOException e)
		{
			e.printStackTrace();
			return null;
		}
	}
説明:コンスタント.IO_BUFER_SIZEは一つの定数です.定数に変えられます.例えば、2*1024は、あなたの写真のサイズによって、自分で写真のサイズに合わせて設定します.
付加的なcopy関数
prvate static void copy(InputStream in、Output Stream out)            throws IOException{        byte[]b=new byte[IOU BUFFER SIZE]        int read;        while((read=in.read(b))!=-1){            out.write(b,0,read);        }     }