IOException - Datei kann nicht geladen werden
Ich habe eine App, die GIF-Bilder zeigt.Alles funktioniert einwandfrei, wenn das Bild in Zeichenform gespeichert istund ich greife darauf so zu
<code>is=context.getResources().openRawResource(R.drawable.mygif); movie = Movie.decodeStream(is); </code>
Aber ich muss ein Bild aus dem Internet herunterladen, also speichere ich es in CacheDir, das funktioniert einwandfrei. Ich habe Folgendes versucht, um es zu lesen.
<code> try { is = new BufferedInputStream(new FileInputStream(new File(context.getCacheDir(), "mygif.gif"))); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } movie = Movie.decodeStream(is); </code>
Und das
<code>movie = Movie.decodeFile(new File(context.getCacheDir(), "mygif.gif").getPath()); </code>
Aber egal mit was, es endet
<code>java.io.IOException at java.io.InputStream.reset(InputStream.java:218) at android.graphics.Movie.decodeStream(Native Method) at android.graphics.Movie.decodeTempStream(Movie.java:74) at android.graphics.Movie.decodeFile(Movie.java:59) </code>
oder
<code>java.io.IOException: Mark has been invalidated. at java.io.BufferedInputStream.reset(BufferedInputStream.java:350) at android.graphics.Movie.decodeStream(Native Method) </code>
Ich denke, es ist ein sehr einfacher Fehler, aber ich komme nicht darüber hinweg. Manifest hat:
<code><uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> </code>