Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android BitmapFactory.decodeFile()返回null_Android_File_Bitmap_Bitmapfactory - Fatal编程技术网

Android BitmapFactory.decodeFile()返回null

Android BitmapFactory.decodeFile()返回null,android,file,bitmap,bitmapfactory,Android,File,Bitmap,Bitmapfactory,我正在创建一个Android应用程序,您可以在其中将图像从位置x复制到位置y。复制完成后,我希望在ImageView中查看图片。 我知道图像的位置,但无论我尝试什么,我都无法创建它的位图对象 导致我出现问题的原因是: BitmapFactory.decodeFile(dir+s); dir=getCacheDir().getAbsolutePath()+“/images/” s=文件名(例如1275123123.jpg) 如果我创建一个具有相同路径的文件对象,并调用f.isFile(),它将返

我正在创建一个Android应用程序,您可以在其中将图像从位置
x
复制到位置
y
。复制完成后,我希望在
ImageView
中查看图片。 我知道图像的位置,但无论我尝试什么,我都无法创建它的
位图
对象

导致我出现问题的原因是:

BitmapFactory.decodeFile(dir+s);
dir=getCacheDir().getAbsolutePath()+“/images/”

s=文件名(例如1275123123.jpg)

如果我创建一个具有相同路径的
文件
对象,并调用
f.isFile()
,它将返回
true


在android或windows中打开图像都不是问题

我有一个类似的问题,最终解决的是创建
FileInputStream(…)
并解码流。这是我使用的代码,我将其更改为适合您的情况:

File location = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+ "/images");
File dest = new File(location, fileName + ".JPG");
FileInputStream fis;
fis = new FileInputStream(dest);
Bitmap img = BitmapFactory.decodeStream(fis);

我有一个类似的问题,最终解决的是创建
FileInputStream(…)
并解码流。这是我使用的代码,我将其更改为适合您的情况:

File location = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+ "/images");
File dest = new File(location, fileName + ".JPG");
FileInputStream fis;
fis = new FileInputStream(dest);
Bitmap img = BitmapFactory.decodeStream(fis);

您是否忘记添加SD卡访问权限读取外部存储和/或写入外部存储

您是否忘记添加SD卡访问权限读取外部存储和/或写入外部存储

您必须添加

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

对您清单的权限

请不要忘记向用户请求运行时权限。

您必须添加

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

对您清单的权限


请不要忘记向用户请求运行时权限。

真正的路径是什么?您是否检查了@blackbelt/data/data/net.hath.snapcap/cache/images/file。jpg@Ryan我刚才试过了,没用。真正的路径是什么?你检查过@blackbelt/data/data/net.hath.snapcap/cache/images/file了吗。jpg@Ryan我刚才试过了,它不起作用。我正在获取FileNotFoundException不创建fis。而文件对象是好的。请不要这样做
decodeFile
调用
decodeStream
本身:我得到FileNotFoundException没有创建fis。而文件对象是好的。请不要这样做<代码>解码文件
调用
解码流
自身: