Файл перезаписывается при перезапуске программы Android - PullRequest
0 голосов
/ 12 мая 2011

Я пытаюсь записать некоторые данные в файл. Однако каждый раз, когда я перезапускаю свою программу, я думаю, что она перезаписывает исходный файл (создает новый?). Вот фрагмент кода, в котором я создаю экземпляры. Что я могу изменить, чтобы файл не перезаписывался каждый раз? что-то вроде if.doesExist ??

try {
        File root = Environment.getExternalStorageDirectory();
        if(root.canWrite()){
        File highscoresFile = new File(root, "names.txt");
        FileWriter writer = new FileWriter(highscoresFile);
        BufferedWriter out = new BufferedWriter(writer);
        //out.newLine();
        out.append(name);
        out.close();
        }
    } catch (FileNotFoundException e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

1 Ответ

1 голос
/ 12 мая 2011

Вы, вероятно, перезаписываете файл. Вы можете добавить в конец файла с помощью FileWriter, используя другой конструктор.

Вместо этого используйте

FileWriter writer = new FileWriter(highscoresFile, true);

Логическое значение в конце говорит вам, добавлять или нет конец файла.

...