2013-11-27 4 views
0

В основном я читаю файл, в котором есть 9 цехов, а затем их куча кода, который делает кучу расчетов из этого, так или иначе у меня возникла проблема: я только получаю результатов. Это мой код:Выход консоли в файл

} 
    if(total > reccomended_max){ 
     PrintStream out = new PrintStream(new FileOutputStream("output.txt")); 
     System.setOut(out); 
     System.out.println("The total staff wages for " + Unitnum + " is £" +total + ", therefore it is higher than the RM"); 
    }else{ 
     System.out.println("The total staff wages for " + Unitnum + " is £" +total + ", therefore it is lower than the RM"); 
    } 

«reccomended_max» является пользовательский ввод номер, а затем в основном, если «общая» заработная плата блока магазина больше, чем «recommended_max» мне это нужно, чтобы:

Печать данных магазина единицы в выходной файл

Else> если его меньше .. orint в консоль .. Когда я пытаюсь случайных чисел вход для reccomended_max им получать:

Please enter the recommended maximum(RM) staff cost: 
900 
The total staff wages for Unit One is £824.0, therefore it is lower than the RM 
The total staff wages for Unit Two is £0.0, therefore it is lower than the RM 
The total staff wages for Unit Three is £504.0, therefore it is lower than the RM 

Консоль ^^. и для вывода файла: Общая сумма заработной платы для Unit Nine составляет £ 935,0, поэтому она выше RM

Кажется, что бы ни вводился, я получаю только девять единиц в выходном файле? Кто-нибудь знает, почему это может быть или мой код слишком краток, чтобы знать, почему?

+0

Вы должны инициализировать выходной поток за пределами оператора if. Часть else не использует его. – erny

ответ

0

Попробуйте положить PrintStream out = new PrintStream(new FileOutputStream("output.txt")); Вне инструкции if. Подумайте, может быть, это проблема, но я все еще новичок, поэтому не держите меня!

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