2015-09-29 2 views
0

Я создал простой текстовый файл для хранения определенных событий (больше похоже на файл журнала, но более простой подход) Текстовый файл отслеживает каждую попытку загрузки пользователями.Запись в текстовый файл с append - java

Проблема в том, что всякий раз, когда у меня есть более чем попытка в одном сеансе для пользователя, текстовый файл будет сброшен и будет хранить только последнюю попытку загрузки.

Желаемый результат:

username: user1 File_Name: myfile.zip Downloaded_Time: yyyy-mm-dd HH:mm:ss 
username: user2 File_Name: myfile.zip Downloaded_Time: yyyy-mm-dd HH:mm:ss 
username: user3 File_Name: myfile.zip Downloaded_Time: yyyy-mm-dd HH:mm:ss 

Фактический выход:

username: user3 File_Name: myfile.zip Downloaded_Time: yyyy-mm-dd HH:mm:ss 

Вот моя работа до сих пор:

try 
       { 
        String content = "Username = "+ uname + " File_Name: "+filename+" Downloaded_Time: " +myDate; 
        File file = new File("C:\\log\\log.txt"); 

        if(!file.exists()) 
        { 
         file.createNewFile(); 
        } 

        PrintWriter pw =new PrintWriter(file.getPath()); 
        pw.println(content); 
        pw.print("\n"); 
        pw.close(); 


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

ответ

3

Используйте FileWriter, который позволяет определить, если вы хотите добавьте к существующему файлу:

PrintWriter pw = new PrintWriter(new FileWriter(file, true)); 
Смежные вопросы