从Uri创建文件返回空文件

时间:2018-09-11 18:11:51

标签: android file fileoutputstream

我正在尝试从Uri读取文件。 读取成功,但返回文件为空(android studio将其标记为{File @ 66fgf}“”),没有任何其他数据。 我具有读写外部存储的权限。 总计读取221688字节。 我做错了什么?

public static File getFile(Context context, Uri uri) throws IOException {
    InputStream inputStream = context.getContentResolver().openInputStream(uri);
    File file = new File(Environment.getExternalStorageDirectory() + File.separator + "TEMP" + File.separator, "_" + uri.getLastPathSegment());
    file.createNewFile();
    FileOutputStream fileOutputStream = new FileOutputStream(file, false);
    int bufferSize = 1024;
    byte[] buffer = new byte[bufferSize];

    int len = 0;
    int total = 0;
    while ((len = inputStream.read(buffer)) != -1) {
        fileOutputStream.write(buffer, 0, len);
        total += len;
    }
    fileOutputStream.close();
    inputStream.close();
    return file;
}

谢谢。

0 个答案:

没有答案