2016-07-20 3 views
0

Привет, ребята, мне нужна моя программа, чтобы иметь возможность хранить несколько выходов, но вместо этого она просто перезаписывает одну и ту же строку (итого) в текстовом файле. Как я могу сделать это, чтобы он написал несколько ответов вместо того, чтобы переписать его? Спасибо :)Перезапись вывода в текстовом файле (необходимо сохранить все выходы)

static int boys; 
static int girls; 
static int total; 

public static void program() { 



    System.out.println("enter number of girls: "); 
    girls = input.nextInt(); 
    System.out.println("enter number of boys: "); 
    boys = input.nextInt(); 
    total = boys+girls; 

    System.out.println(total); 


} 

private static Formatter x; 

public void openFile() { 
    try { 
     x = new Formatter("income.txt"); 
    } 

    catch(Exception e) { 
     System.out.println("You have an error"); 
    } 
} 

public static void addRecords(){ 
    x.format("%s%s%s", " 19", " James", " A"); 
    x.format("%s%s", "\n", total); 



} 

public void closeFile(){ 
    x.close(); 
} 

ответ

0

Вы можете изменить метод openFile к чему-то вроде этого:

public void openFile(){ 
    try { 
     Appendable appendable = new FileWriter("income.txt",true); 
     x = new Formatter(appendable); 
    } catch(Exception e) { 
     System.out.println("You have an error"); 
    } 
} 

Важной частью является new FileWriter("income.txt",true);, это создает новый FileWriter, который добавляет данные в файл income.txt.

Вы можете найти более подробную информацию об этом HERE

+0

Это гениально. Спасибо вам за помощь! :) – Suppaa

+0

@Suppaa Добро пожаловать, удачи. Не забывайте отмечать это как ответ, если он решил вашу проблему. – Titus

Смежные вопросы