2016-04-28 3 views
0

ich ein Objekt eine Datei enthält:java.io.FileNotFoundException während Bitmap aus einer Datei Objekt auf Android zu schaffen

public class Ordo implements java.io.Serializable{ 

static final long serialVersionUID = 11223344; 

public String id; 
public String name; 
public String date; 
public String status; 
public File thumbnail; 

und ich brauche diese Datei in eine Bitmap zu konvertieren, um auf einer Aktivität betrachtet werden. Ich mache folgendes:

thumbnail = list.getFileFromId(vid); 
    Bitmap pic = null; 
    try { 
     byte[] buffer = new byte[8192]; 
     int bytesRead; 
     FileInputStream input = new FileInputStream(thumbnail); 
     ByteArrayOutputStream stream = new ByteArrayOutputStream(); 

     while((bytesRead = input.read(buffer)) != -1){ 
      stream.write(buffer, 0, bytesRead); 
      } 
     pic = BitmapFactory.decodeByteArray(stream.toByteArray(), 0, stream.size()); 
    } catch (Exception e) { 

     e.printStackTrace(); 
    } 

aber ich bekomme die folgende Fehlermeldung:

04-28 18:16:16.759: W/System.err(31995): java.io.FileNotFoundException: 1461854326445.png: open failed: ENOENT (No such file or directory) 04-28 18:16:16.779: W/System.err(31995): at libcore.io.IoBridge.open(IoBridge.java:456) 04-28 18:16:16.779: W/System.err(31995): at java.io.FileInputStream.(FileInputStream.java:76) 04-28 18:16:16.779: W/System.err(31995): at com.jre.link.View.onCreate(ViewOrdo.java:83) 04-28 18:16:16.779: W/System.err(31995): at android.app.Activity.performCreate(Activity.java:6550) 04-28 18:16:16.779: W/System.err(31995): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120) 04-28 18:16:16.779: W/System.err(31995): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3102) 04-28 18:16:16.779: W/System.err(31995): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3248) 04-28 18:16:16.779: W/System.err(31995): at android.app.ActivityThread.access$1000(ActivityThread.java:197) 04-28 18:16:16.779: W/System.err(31995): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1681) 04-28 18:16:16.779: W/System.err(31995): at android.os.Handler.dispatchMessage(Handler.java:102) 04-28 18:16:16.779: W/System.err(31995): at android.os.Looper.loop(Looper.java:145) 04-28 18:16:16.779: W/System.err(31995): at android.app.ActivityThread.main(ActivityThread.java:6872) 04-28 18:16:16.779: W/System.err(31995): at java.lang.reflect.Method.invoke(Native Method) 04-28 18:16:16.779: W/System.err(31995): at java.lang.reflect.Method.invoke(Method.java:372) 04-28 18:16:16.779: W/System.err(31995): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 04-28 18:16:16.779: W/System.err(31995): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)

es scheint, dass ich brauche eine physische Datei von meinem Datei-Objekt erstellen ... eine Ahnung, wie Ich kann das lösen?

Vielen Dank für Ihre Antworten.

+0

Wo speichern Sie Ihre Datei? Aktualisieren Sie mit diesem Code. Haben Sie auch korrekte Berechtigungen in Manifest hinzugefügt? –

+0

Verwenden Sie keinen Byte-Array-Ausgabestream, sondern verwenden Sie direkt 'BitmapFactory.decodeFile (thumbnail);' – greenapps

+0

Was ist der Wert von thumbnail.getAbsolutePath()? – greenapps

Antwort

0

Schließlich werde ich versuchen, einen anderen Weg zu finden, indem Sie eine Bitmap anstelle einer Datei in mein Objekt einfügen .... es wird einfacher. Danke für deine Antworten trotzdem.

Verwandte Themen