Frage

Ich bin eine Datei in meinem Android-Anwendung wie folgt zu erstellen:


HEADINGSTRING = new String("Android Debugging " + "\n"
                    "XML test Debugging");

}

public void setUpLogging(Context context){

    Log.d("LOGGING", "Setting up logging.....");
    try { // catches IOException below

         FileOutputStream fOut = context.openFileOutput(FILE_NAME,Context.MODE_APPEND);

         OutputStreamWriter osw = new OutputStreamWriter(fOut); 

         // Write the string to the file

         osw.write(HEADINGSTRING);

        /* ensure that everything is

        * really written out and close */

        osw.flush();

       osw.close();

} catch (FileNotFoundException e) {

    e.printStackTrace();
} catch (IOException e) {

    e.printStackTrace();
}
    finally{
        Log.d("LOGGING", "Finished logging setup.....");
    }
}

Und ich schreibe während der Ausführung der App auf die Datei wie folgt:


public void  addToLog(File file, String text) throws IOException {

         BufferedWriter bw = new BufferedWriter (new FileWriter(file, true));

         bw.write ("\n" + text);

         bw.newLine();

         bw.flush();
         bw.close();
}

Das funktioniert gut, aber wenn meine app schließt wird die Datei gelöscht und wenn die Anwendung ausgeführt wird, wieder alle Informationen, die ich es geschrieben habe ist weg.

Wie kann ich sicherstellen, dass die Datei bleibt auch nach dem Schließen des App?

Update:

Ich habe MODE_PRIVATE zu MODE_APPEND geändert und das Problem behoben ist, dank Skirmish.

War es hilfreich?

Lösung

Sie können http überprüfen möchten: //developer.android.com/reference/android/content/Context.html#openFileOutput(java.lang.String , int) vor allem den Teil über MODE_APPEND anstatt die app beginnt alles aus jeder Zeit zu löschen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top