这个是从本体获取 , 记住要导入访问本体本件的权限
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize=(int)7.5; /*图片长宽方向缩小倍数*/
options.inJustDecodeBounds=false;
File file = new File("/storage/emulated/0/CheckAPP/CheckSign.jpg");
Uri uri = Uri.fromFile(file);
Bitmap map=BitmapFactory.decodeStream(getContentResolver().openInputStream(uri), null, options);
这个是从网络上获取的图片, 需要导入上网的权限
URL url = new URL("http://d.hiphotos.baidu.com/zhidao/pic/item/962bd40735fae6cd0009f9410eb30f2442a70f54.jpg");
InputStream is = url.openStream();
bitmap = BitmapFactory.decodeStream(is);
hanlder.sendEmptyMessage(0x123);
is.close();
网络上获取的图片图片保存到本地
// 上面是从服务端获取资源,下面是把资源保存在客户端
is = url.openStream();
OutputStream os = openFileOutput("androidcc.jpg",MODE_WORLD_WRITEABLE);
byte[] b = new byte[1024];
int len = 0;
while ((len = is.read(b)) != -1) {
System.out.println("b:"+b[0]);
os.write(b, 0, len);
}
is.close();
os.close();
将Bitmap保存到手机指定的目录下
private String createFile() {
ByteArrayOutputStream baos = null;
String _path = null; //完整路径
try {
String sign_dir = Environment.getExternalStorageDirectory() + File.separator+"CheckAPP";
File file=new File(sign_dir);
if(!file.exists()){
file.mkdirs(); //判断是否存在, 不存在创建
}
_path = sign_dir +File.separator+ "CheckSign"+ ".jpg"; //System.currentTimeMillis()
baos = new ByteArrayOutputStream();
mSignBitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); //100是图片压缩质量,表示100%不压缩
byte[] photoBytes = baos.toByteArray();
if (photoBytes != null) {
new FileOutputStream(new File(_path)).write(photoBytes);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (baos != null)
baos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return _path;
}