如何在SDCARD上存储的情况下将JPG文件作为位图打开?

32

实际上,我知道如何将PNG文件作为位图打开。但是我的代码无法打开JPG文件,我不知道为什么。

我在Stack Overflow或Google上找不到有关如何做到这一点的正确示例。

我需要从sdcard目录中打开一个JPG文件并拥有一个位图。例如:“sdcard/images/01.jpg”

谢谢


1
你有读取外部存储的使用权限,对吧?这让我有点困惑。 - Erhannis
2个回答

55
File root = Environment.getExternalStorageDirectory();
ImageView IV = (ImageView) findViewById(R.id."image view");
Bitmap bMap = BitmapFactory.decodeFile(root+"/images/01.jpg");
IV.setImageBitmap(bMap);

永远尝试使用Environment.getExternalStorageDirectory();而不是sdcard。 您需要在布局中的某个地方放置一个ImageView,但这就是我处理这类事情的方法。

我个人也使用这段代码,并且它在这里起作用。


2
我需要设置哪些权限才能运行上述代码? - winklerrr

11

任何一个BitmapFactory.decode*方法都应该能够处理标准的JPG文件。
如果您发布一些代码,我们可以更容易地看出为什么它无法工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接