0

SDカードから画像を取得するためのこのコードがあります。しかし、それはで画像を表示していませんImageView。画像がSDカードにあると確信しています。

File f = new File("/mint/sdcard/e.jpg");

Bitmap bitmap = BitmapFactory.decodeFile(f.getAbsolutePath());
Toast.makeText(this, bitmap + "", 3).show();
bmImage.setImageBitmap(bitmap);
4

4 に答える 4

1
public Bitmap readImageFromExternalMemory(String name) throws IOException
{
    File file = new File(Environment.getExternalStorageDirectory().toString()+"/"+name, userId + ".jpg");
    FileInputStream inStream = new FileInputStream(file);

    Bitmap bitmap = BitmapFactory.decodeStream(inStream);
    inStream.close();

    return bitmap;
}

を使用する必要はありません"/mnt/sdcard/e.jpg"。この方法を使用する必要があります:

Environment.getExternalStorageDirectory().toString()

外部ディレクトリの正しいパスで返されるためです。メーカーはこれを別の名前に変更できるため、上記の方法を使用する必要があります。

于 2013-01-07T13:53:48.857 に答える
1

そのではありませmintmnt。次のように行を作成します。

File f = new File("/mnt/sdcard/e.jpg");
于 2013-01-07T13:44:09.850 に答える
0

最善の方法は、これを使用することです:

File sdcard = Environment.getExternalStorageDirectory();

File f = new File(sdcard+"/e.jpg");

現在、すべての Android スマートフォンで動作します

于 2013-01-07T13:54:58.540 に答える
0

このように変更して、

File f = new File("/mnt/sdcard/e.jpg");   
Bitmap bitmap = BitmapFactory.decodeFile(f.getAbsolutePath());
bmImage .setImageBitmap(bitmap);
于 2013-01-07T13:39:20.797 に答える