通过相机意图捕捉图像=>
new Intent(MediaStore.ACTION_IMAGE_CAPTURE).putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
String image = photoUri.toString();
Uri uri = Uri.parse(image);
File imageFile = new File(uri.getPath());
相机意图工作正常,但结束文件,imageFile
是一个空图像文件。
答案 0 :(得分:0)
使用以下代码:
File imageFile = new File(getPath(uri));
public String getPath(Uri uri)
{
Cursor cursor = getContentResolver().query(uri, null, null, null, null);
cursor.moveToFirst();
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
String s=cursor.getString(column_index);
cursor.close();
return s;
}
答案 1 :(得分:0)
我想从URI创建文件,我遇到的挑战是我以MediaStore.Images.Media.getBitmap(getContentResolver(), uri)
格式获取URI
所以我尝试了以下内容:
imageView.setImageBitmap(MediaStore.Images.Media.getBitmap(getContentResolver(), uri))
它返回了我的位图,所以如果我想在ImageView
中显示图像或使用以下代码从bitmat创建文件,我选择使用FileOutputStream fOutputStream = new FileOutputStream(filePath);
BufferedOutputStream bOutputStream = new BufferedOutputStream(fileOutputStream);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, bos); //compress format JPEG
bos.flush();
bos.close();
下面:
{{1}}