Ich versuche, eine Datei auf meiner SD-Karte in meinem HTC Hero-Handy zu schreiben. Ich erstelle die Datei in meiner SD-Karte mit:Schreiben auf SDCard Problem - Android
Datei = neue Datei (path.getAbsolutePath(), "Dateiname.txt");
wobei Pfad der Pfad zu meiner externalStorageDirectory (dh \ sdcard)
Wenn ich den Pfad dieser Datei einzuloggen, hat \ it sagen sdcard \ filename.txt
Allerdings, wenn ich einen Outputstream erstellen Um in die Datei zu schreiben, wird plötzlich der Dateipfad in \ data \ data geändert und ich kann nicht darauf zugreifen.
Kann jemand bitte helfen zu klären, wie ich eine Datei in der SDCard erstellen und dann darauf schreiben kann?
Danke!
Edit:
path = Environment.getExternalStorageDirectory();
Log.d("SDCARDPLSWORK", path.toString());
try
{
myFile = new File(path.getAbsolutePath(), "SensorValues.txt");
boolean i = myFile.createNewFile();
Log.d("SDCARDPLSWORK", myFile.toString() + " " + i);
fos = new FileOutputStream(myFile);
Log.d("FILEANDROID", getFileStreamPath("SensorValues.txt").toString());
}
catch(FileNotFoundException e)
{
e.printStackTrace();
}
Dies ist, was ich tue. Der Teil bis SDCARDPLSWORK ist korrekt, aber wenn es um das FILEANDROID-Protokoll geht, geht es zum privaten Datenspeicher.
Ohh ... ich dachte, getFileStreamPath bekommt nur den Pfad einer Datei .. es funktioniert jetzt .. vielen Dank! :) – Imelza