Android: запись в один файл несколько раз

1

Новое с Android. Сожалею! Я пытаюсь создать следующее...

  1. Подождите, пока таймер закончит. (Нет проблем здесь).
  2. Время записи в файл журнала.
  3. Снова активируйте таймер.
  4. Вернитесь к шагу 1 и повторите.

Код для записи в файл выглядит следующим образом...

    File file = new File("/sdcard/log.txt");
    BufferedWriter writer = new BufferedWriter(new FileWriter(file));
    writer.write(str);
    writer.newLine();
    writer.flush();
    writer.close();

Код записывает только последний.write в файл! Предыдущий WRITE удален. Я подозреваю, что он каждый раз создает новый файл и записывает последнюю строку. Я пробовал с FOS и OSW, но с такими же результатами! Пожалуйста, помогите, я застрял на этом около 48 часов.

Теги:
bufferedwriter
sd-card
filewriter

2 ответа

3
Лучший ответ

Используйте FileWriter в режиме добавления.

BufferedWriter writer = new BufferedWriter(new FileWriter(file, true));
  • 0
    Спасибо друг. Глупая ошибка :)
2

Вы можете использовать этот конструктор для FileWriter:

FileWriter (Файл файла, boolean append)

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

В вашем коде используйте: BufferedWriter writer = new BufferedWriter(new FileWriter(file,true));

Ещё вопросы

Сообщество Overcoder
Наверх
Меню