У меня есть этот код, который копирует элементы массива в текстовый файл, и после копирования файлов у меня есть кнопка, которая открывает файл i-copy.Не удается закрыть текстовый файл
try
{
print = new PrintWriter("C:\\Users\\Jofrank\\workspace\\Java\\src\\payroll\\report.txt");
print.println("EMPLOYEES PAYROLL RECORD AS OF "+dateFormat.format(date));
print.println();
for(int x=0;x<department.length;x++)
{
print.println("DEPARTMENT: "+department[x].toUpperCase());
print.println("\tPAYROLL PERIOD\tEMPLOYEE NUMBER\tNAME\tPAY RATE\tHOURS WORKED\tSALARY");
print.println();
for(int y=0;y<trans.length;y++)
{
if(trans[y] == null)
{
continue;
}
if(trans[y].getDepartment().equals(department[x]))
{
print.println("\t"+trans[y].getPayrollPeriod()+"\t"+trans[y].getEmpNo()+"\t\t"+trans[y].getName()+"\t"+trans[y].getPayRate()+"\t\t"+trans[y].getHoursWorked()+"\t\t"+String.format("%,.2f", (trans[y].getPayRate()*trans[y].getHoursWorked())));
total+=(trans[y].getPayRate()*trans[y].getHoursWorked());
}
}
print.println("\t\t\t\t\t\t\t\t\tTOTAL:\t"+String.format("%,.2f", total));
print.println();
total=0;
}
print.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
К сожалению, в моем текстовом файле не было ОБНОВЛЕНО, если i-закрыть систему.
Есть ли способ, чтобы мой текстовый файл обновлялся автоматически без ЗАКРЫТИЯ системы?
'flush()' 'flush()'. Я не думаю, что «PrintWriter» автоматически сбрасывается. «BufferedWriter» должен после записи X байтов. –
'close()' должен, я думаю, 'flush()'. –
Вы можете выполнить флеш(). close() автопотоки. Почему вы не хотите закрывать писателя? Вы должны закрыть писателя, как только вы закончите с ним. – aglassman