URI があり、この URI からファイルを作成したい:
fileUri = file:///mnt/sdcard/20120904_162830.png;
File fichero = new File(fileUri.toString();
これは正常に動作しますが、使用または作成しようとするとfichero.exist() = false
これからファイルを作成するにはどうすればよいfileUri
ですか?
解決:
fichero = new File(fileUri.getPath());//for camera
if (!fichero.exists()) {
fichero = new File(getRealPathFromURI(fileUri));//for gallery
}
public String getRealPathFromURI(Uri contentUri) {
String[] proj = { MediaStore.Images.Media.DATA };
@SuppressWarnings("deprecation")
Cursor cursor = managedQuery(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}