我有一个uri,我想从这个uri创建一个文件:

fileUri = file:///mnt/sdcard/20120904_162830.png;

File fichero = new File(fileUri.toString();

这很好,但当我尝试创建use或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);
    }

最佳答案

试试这个:

File fichero = new File(fileUri.getPath());

07-28 13:01