2010-06-14 21 views
3

Je crée un fichier dans mon application Android comme suit:Android - fichier Persister lorsque l'application ferme


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....."); 
    } 
} 

Et j'écrire dans le fichier lors de l'exécution de l'application comme suit:


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(); 
} 

Cela fonctionne très bien, mais lorsque mon application se ferme, le fichier est supprimé et lorsque l'application est à nouveau exécutée, toutes les informations que j'ai écrites à elle est parti.

Comment puis-je m'assurer que le fichier persiste même après la fermeture de l'application?

Mise à jour:

J'ai changé MODE_PRIVATE à MODE_APPEND et le problème est résolu, Escarmouche merci.

Répondre