Android读取本地或网络图片并转换为Bitmap
在做android项目时,我们经常需要从本地或者网络读取图片,并转换为Bitmap图片,以便使用,下面是读取本地图片并转换的方法:
Java代码
/** *得到本地或者网络上的bitmapurl-网络或者本地图片的绝对路径,比如: * *A.网络路径:url="http://blog.foreverlove.us/girl2.png"; * *B.本地路径:url="file://mnt/sdcard/photo/image.png"; * *C.支持的图片格式,png,jpg,bmp,gif等等 * *@paramurl *@return */ publicstaticBitmapGetLocalOrNetBitmap(Stringurl) { Bitmapbitmap=null; InputStreamin=null; BufferedOutputStreamout=null; try { in=newBufferedInputStream(newURL(url).openStream(),Constant.IO_BUFFER_SIZE); finalByteArrayOutputStreamdataStream=newByteArrayOutputStream(); out=newBufferedOutputStream(dataStream,Constant.IO_BUFFER_SIZE); copy(in,out); out.flush(); byte[]data=dataStream.toByteArray(); bitmap=BitmapFactory.decodeByteArray(data,0,data.length); data=null; returnbitmap; } catch(IOExceptione) { e.printStackTrace(); returnnull; } }
说明:Constant.IO_BUFFER_SIZE是一个常量而已,可以改成常数,比如2*1024,其实取决于你的图片大小,自己根据图片的大小自己设定吧。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。