Wie erstelle ich eine Datei im internen Speicher von Android?
Ich möchte eine Datei speichern auf internen Speicher in einen bestimmten Ordner. Mein code ist:
File mediaDir = new File("media");
if (!mediaDir.exists()){
mediaDir.createNewFile();
mediaDir.mkdir();
}
File f = new File(getLocalPath());
f.createNewFile();
FileOutputStream fos = new FileOutputStream(f);
fos.write(data);
fos.close();
getLocalPath
zurück /data/data/myPackage/files/media/qmhUZU.jpg
aber wenn ich will erstellen Sie den media-Ordner hab ich immer die exception "java.io.IOException: Read-only file system". Irgendwelche Ideen, wie zu schreiben, dass meine Dateien auf dem internen Handyspeicher in den Ordner media? Danke.
InformationsquelleAutor der Frage Buda Gavril | 2011-02-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie verwenden ContextWrapper wie diese:
Wie immer finden Sie DokumentationContextWrapper hat eine Menge zu bieten.
InformationsquelleAutor der Antwort Audrius
Sollten Sie die
media
dir angehängt, wasgetLocalPath()
gibt.InformationsquelleAutor der Antwort Lucas S.
Ich war immer der exakt gleiche Fehler als gut. Hier ist der fix. Wenn Sie angeben, wo Sie zu schreiben, wird Android automatisch beheben Ihrem Weg in entweder
/data/
oder/mnt/sdcard/
. Lassen Sie mich erklären.Wenn Sie die folgende Anweisung ausführen:
Wird es beheben den Pfad zum root -
/data/
irgendwo weiter oben in Android.Ich dachte, dieses heraus, weil ich nach der Ausführung des folgenden code, es wurde automatisch in den root
/mnt/
ohne mir die übersetzung etwas auf meinem eigenen.Eine schnelle Lösung wäre, ändern Sie Ihre folgenden code:
Hoffe, das hilft
InformationsquelleAutor der Antwort styler1972
Eine Datei schreiben
Beim speichern einer Datei in den internen Speicher, können Sie erwerben das entsprechende Verzeichnis als eine Datei durch den Aufruf einer der beiden Methoden:
getFilesDir()
getCacheDir()
Achtung: Wenn das system wenig Speicher, kann es löschen Sie Ihre cache-Dateien ohne Warnung.
InformationsquelleAutor der Antwort Magnetron
Hallo versuchen Sie dieses Verzeichnis erstellen + Datei drin
InformationsquelleAutor der Antwort